| > So far I haven't found a good reason not to write tests...I don't quite see how tooling will get rid of the need for tests. I write device control software. It’s very difficult to have true automated testing of things like drivers. You can write unit tests for subsystems, like packet parsers, but integration testing generally requires good ol’ “monkey testing.” “Just write a mock!” Is what I hear all the time. Mocking a device is a massive project; potentially larger than designing the device, itself. Remember that the mock needs to be of unimpeachable quality, and also needs to do things like simulate adverse signal environments. DX for that kind of thing can be awful. As far as basic DX goes... Most developer tools are wrappers for command-line OS tools, and it shows. They can also be quite buggy, and we accept this bugginess. I use Xcode, which is quite “crashy.” I am constantly fixing issues by deleting the build folder. Back to testing... I prefer test harnesses over unit tests. I write about that here: https://medium.com/chrismarshallny/testing-harness-vs-unit-4... |
You only need to _mock_ the object, that is emulate behavior on a small scale.