Unit tests are automatic tests that operate very close to actual business logic. The focus here is to test individual rules in isolation to certify that the intended result is achieved and maintained over the lifetime of an application.
This increases the overall quality of the system and reduces the number of bugs created because all changes are guarded by the existing suite of unit tests that certify that changes do not break the existing system. The feedback on unit tests is instant because they trigger and run automatically each time a change is checked in to the version control system.
Unit tests are programs written ...