Chapter 9. Step 3: Verification Testing
Verification testing is the most effective way to remove defects from software. If most of the defects are removed prior to validation testing (i.e., unit, integration, system, and acceptance testing), validation testing can focus on testing to determine whether the software meets the true operational needs of the user and can be effectively integrated into the computer operations activity.
Because the experience of many testers is limited to unit, integration, systems, and acceptance testing, these testers are not experienced in verification techniques. The verification techniques are not complex, and once understood, can be easily implemented into the test process.
Typically, verification testing—testing in a static mode—is a manual process. Verification testing provides two important benefits: defects can be identified close to the point where they originate, and the cost to correct defects is significantly less than when detected in dynamic testing.
Verification testing normally occurs during the requirements, design, and program phases of software development, but it can also occur with outsourced software. There are many different techniques for verification testing, most of which focus on the documentation associated with building software. This chapter discusses the many different ways to perform verification testing during the requirements, design, and programming phases of software development.
Most but not all verification techniques ...