- Inspection Testing, aka Code Walk-Throughs:
This doesn't involve running the code, only examining it.
- Unit Testing:
This tests each individual component for the expected reponse
under design conditions and for correct error response under
all other conditions.
- Integration Testing:
This tests how the code functions within larger groups of
code and on specific systems, and with specific additional
components. This is where errors such as memory leaks or
namespace conflicts should be detected.
- System Testing:
This tests the finished product to insure that it meets the
- Regression Testing:
This is equivalent to System testing, but is performed
after the finished product has been put into use for some
time (usually with test data) to make sure that use has not
impaired the functioning of the product.
- Saturation Testing aka Load Testing:
This tests the performance of either the finished product
or specific units for speed and data capacity, in conjunction
with hardware, system software, and other factors both internal
to and external to the program.
- Acceptance Testing:
This testing is done by the customer after he/she
receives custom-ordered software.
- Whitebox Testing aka Structural Testing:
Running the code and testing it WITH knowledge of the code.
- Blackbox Testing aka Functional Testing:
Running the program as a user would WITHOUT knowledge of the code.