Thursday, March 06, 2008

Have you completed your Unit Tests?

Perhaps this is isolated to my world, but more often than not the perception of Software Quality Assurance has come to the point of "Did you complete the unit testing?" Large corporations take this view when it comes to software quality. Unit tests are wonderful and necessary. I have participated on one project where we had to rely on JUnit for test automation for our regression testing. But unit tests are not the only game.

Unit tests typically are written by the same developer who wrote the code. Perhaps corporations today expect that the software company conduct unit testing, then delivers the code to their contracted testing team.

Faster and cheaper certainly does not translate to a quality software product. There are many types of testing that should be conducted by experienced testing teams before deliverying code to the clients. Exploratory testing cannot be executed by a JUnit test. Integration testing or performance testing and GUI testing cannot be easily implemented by JUnit.

When companies now ask "Did you complete your unit testing?", my answer is always yes we have tested our software.