Jonathan—one of the reasons to write unit tests is so that programmers other than you can see what your code is designed to do (for occasional values of “programmers other than you” that includes you when you’re not at your best). Inheriting someone else’s bad tested code is much less painful than inheriting someone else’s bad untested code.
(And I humbly observe that a larger proportion of the untested (or sparsely tested) code I’ve inherited has been bad than the tested code that I’ve inherited.)
I agree that automated tests are more important in multi-person projects. I do value whatever tests exist in projects I’ve worked on (including my own solo stuff); I just don’t always choose to spend the effort creating them.
Jonathan—one of the reasons to write unit tests is so that programmers other than you can see what your code is designed to do (for occasional values of “programmers other than you” that includes you when you’re not at your best). Inheriting someone else’s bad tested code is much less painful than inheriting someone else’s bad untested code.
(And I humbly observe that a larger proportion of the untested (or sparsely tested) code I’ve inherited has been bad than the tested code that I’ve inherited.)
I agree that automated tests are more important in multi-person projects. I do value whatever tests exist in projects I’ve worked on (including my own solo stuff); I just don’t always choose to spend the effort creating them.