Types of Testing


There are several types of testing that should be done on a large software system. Each type of test has a specification that defines the correct behavior the test is examining so that incorrect behavior can be identified.

There are six types of testing which are as follows:

Unit Testing
Opacity: White box testing
Specification: Low-level design and/or code structure

Integration testing
Opacity: Black- and white-box testing
Specification: Low- and high-level design

Functional and system testing
Opacity: Black-box testing
Specification: high-level design, requirements specification

Acceptance testing
Opacity: Black-box testing
Specification: requirements specification

Regression testing
Opacity: Black- and white-box testing
Specification: Any changed documentation, high-level design

Beta testing
Opacity: Black-box testing
Specification: None.