To tests each unit (i.e., component) of the software as implemented in source code. Unit testing makes heavy use of white-box testing techniques, exercising specific paths in a module's control structure to ensure complete coverage and maximum error detection.
Tests design and construction of software architecture. Integration testing addresses the issues associated with the dual problems of verification and program construction.
Validates the software against the requirements established by the software analysis.
Validation testing provides final assurance that the software meets all functional, behavioral and performance requirements.
Tests software and other system elements as a whole. System testing verifies that all elements mesh properly and that overall system function/performance is achieved. The following are the methods of quality assurance deployed within system testing.
- Recovery Testing
- Security Testing
- Stress Testing
- Performance Testing