There are a lot of developers and managers who think that writing unit tests is just extra work. Suggesting that we should write more unit tests seems to receive ill responses. I think there are many people out there who still don’t understand the purpose of unit testing.
This kind of thinking is probably the result of following kind of experiences:
Writing unit tests is really hard and time consuming. Even small changes in requirements keep breaking the unit tests. Unit tests are not finding any real bugs. It is not that writing unit tests is somehow fundamentally laborious. These kind of experiences are symptoms of something else.
Let’s assume we have decided to increase the stability of our software. So we decide to write tests for our code. The problem is that the customer is requesting new features and deadlines are approaching.