Buy Now

What is "Pairwise" or High Throughput Testing?

Pro-Test enables High Throughput Testing (HTT) by allowing the tester to generate test cases covering all pairwise combinations of test factors. For example, if you wanted to test a web site on different versions of Windows, different browsers, and different resolutions, you could use Pro-Test to generate the test cases for testing all pairwise combinations.

 

Assume that the tester is only interested in testing on Windows 98, ME, and XP. In Pro-Test parlance, the “factor” is Operating System and the “levels” are Windows 98, Windows ME, and Windows XP. The remaining factors and levels are in the table below:

 

 Example Test Setup

 

Pro-Test will generate all possible pairwise combinations of levels. This means that if you pick any level, such as “Win XP”, a test case will exist that includes that level and every other level in every other factor. Therefore, a test case will exist that includes “Netscape Navigator”, “Internet Explorer”, “640 x 480”, “800 x 600”, and “1024 x 768”. Graphically, it can be represented as multiple tree diagrams.

 

 Every Combination

 

Every combination

 

Test Tree

 

For this example, Pro-Test generates 9 total test cases to test all possible pairwise combinations of levels.

 

 Pro-Test Output

 

Do not confuse all possible pairwise comparisons with all possible combinations. For this example, all possible combinations would require 18 test cases.

 

 Pro-Test Output all combinations

 

In this example, Pro-Test generates all possible combinations in 50% fewer test cases. Usually, the savings in test cases is much more significant than a 50% reduction. The table below shows the number of test cases required for all possible cases vs. pairwise cases.

 

 Pro-Test Reduction

 

In all but the most unusual situations, all combinations would require an excessive amount of testing. Ordinarily, developers and testers resort to Ad Hoc testing based on their “gut feel”. Pro-Test enables you to provide uniform pairwise testing without excessive test cases.