Many software systems are required to process huge combinations of input data, all of which deserve to be tested. Since we rarely have time to create and execute test cases for all combinations, the fundamental problem in testing is how to choose a reasonably-sized subset that will find a large percentage of the defects and can be performed within the limited time and budget available. Pairwise testing, the most effective test design technique to deal with this problem, is unfortunately not understood by many testers. The answer is not to attempt to test all combinations of all values for all input variables but to test all pairs of variables. This significantly reduces the number of tests that must be created and run but still finds a large percentage of defects. With examples of the effectiveness of pairwise testing, Lee Copeland demonstrates this technique through the use of orthogonal arrays, James Bach’s all-pairs algorithm, and Microsoft’s PICT tool. Learn to apply the pairwise testing technique as you work through a number of hands-on exercises.