Chapter 15. Testing, Debugging, and Quality Assurance
Many developers think of testing, debugging, and Quality Assurance (QA) as acts that you perform after you write the application — that these have nothing to do with designing the application. However, if you don't design these three tasks into your application, they won't accomplish the job that they should perform — that is, ensuring your application is ready for use by the customer. Testing, debugging, and QA should be part of the design scenario and you must consider them as you write the application as well. It's especially important to include testing during the writing process, because otherwise your code will lack essentials needed to make the testing process easy. Anytime you make these three tasks hard, they won't get accomplished — at least, they won't get accomplished correctly.
This chapter breaks the tasks of testing, debugging, and QA into three major areas, each with its own requirements. You should break down these three activities when designing your application as well. The design document should include separate areas for each activity and describe how you plan to incorporate them into your application from the first day of writing. For example, you often need to include debug code as part of the application as you write it — while you understand how a particular piece of code is supposed to work. If you add the debug code later, you'll often miss tests that you would perform.
This chapter uses Microsoft-supplied ...