Most software developers will admit that testing is a good thing, but many developers don't write tests for their application for a variety of reasons, such as the following:
The fear of testing
Not knowing how to write tests
Thinking that their application is too small for testing
Not having enough time
Budgetary reasons
While many of these reasons are valid, testing can have a profound effect on your application and can drastically improve the quality of your code. The following list provides several reasons why tests should be added to your codebase:
Testing can reduce bugs as new features are added
Testing verifies that your code does what you think it does
Testing verifies that your code does what your client wants
Features can be constrained by testing
Testing forces us to slow down and break our applications into small, manageable components with constraining features
Testing reduces the cost of change by ensuring that a change to a single feature doesn't break another feature...