Thursday, July 11, 2013

Unit Testing

Unit testing is the software testing executed by developers themselves.
Unit testing is part of coding.  I learned from day one when my mentor told me at that time when I start my career in software development.
Coding is not done if unit testing is not done.



Unit testing may involve writing codes. We write codes for testing our codes.

In the modern software development tool, unit testing codes can be generated and we can simply run it after coding work is done. It is not always the case, however. 

Unit testing cannot replace system testing.  Unit testing is to test a small unit of the software.  While the unit A and the unit B both pass unit testing, unit A and B may not work together.

Unit testing is important since when we test features or test the integration, the unit testing error may becomes the bottleneck. It introduces higher costs and the delay to the system testing schedule.  A developer should feel shame if an issue is found in the system testing when it can be found in unit testing.

The challenge of unit testing typically comes from the the lack of the testing env. The unit may rely on other units.

Developers do not do proper unit testing are typically not because they do not like to, it is typically due to the overhead on setting up the env.

A unit testing env should be provided to ease the unit test work.



No comments: