3 ms·
Most software doesn't work the moment you stray from the expected path. Whether that's because most software isn't tested competently or because software testi
by JonChesterfield 3y ago
Most software doesn't work the moment you stray from the expected path.
Whether that's because most software isn't tested competently or because software testing practices don't deliver robust software is not yet clear.
I suspect that unit tests, and tests in general, will be considered a historical artifact from the time before we worked out how to write software properly.
For example, we don't generally unit test things that a static type system checks for us. Maybe good enough type systems will remove the rest of them.
- appplication 3y agoI think it’s a little over optimistic to think that we will ever work out how to properly write software. Some new patterns may help, but we will always have a need for unit tests and other tests. Wrt typing, that’s a very narrow set of errors, and I would dare say even a small minority of the things that can and do go wrong in software are type related. That said, effective typing is another orthogonal tool to unit tests that can help create robust software. On that front, what we are missing is a language with robust typing that catches these type errors, but also gets out of developers way the rest of the time.