Unit testing finds problems early in the development cycle. The goal of unit testing is to isolate each part of the program and show that the individual parts are correct. In unit testing, each software module together with associated control data, usage procedures, and operating procedures, are tested to determine whether they are fit for use. Substitutes such as method stubs, mock objects, and test harnesses can be used to assist testing a module in isolation.
Unit testing is followed by regression testing (after bug fixes) and integration testing (after successful completion of unit testing).
Examples of Unit testing: Single game in a gaming system, user interface to enter data in a business application etc.