Testing Throughout The Software Life Cycle
The document discusses different types of testing at various stages of software development including:
1) Functional testing which verifies that the software functions as specified. This includes black box and white box testing.
2) Non-functional testing which evaluates how well the software works, including performance, load, stress, usability, reliability and portability testing.
3) Structural testing which examines the internal structure or architecture of the software. This includes measuring code coverage to ensure all parts are tested.
4) Regression testing which checks that fixes to defects do not introduce new bugs and that the software still meets requirements after changes. Confirmation testing re-runs tests after defects are fixed