This lesson describes why you should try to use small lists of Values wherever possible.
Long lists of Values always result in large numbers of tests
Reason:
Imagine you are testing an application that has a drop box with 500 city names
That the application also has 5 different features that will be tested together with different cities
If you list each city individually and create a set of 2-way tests, the smallest possible number of tests you would generate would be 500 X 5 = 2,500 tests
Instead, define Equivalence Classes and enter them into Hexawise
Depending upon the business rules and behaviors of the application you are testing, you might break your equvalence classes of cities into size-based categories or location-based categories such as these:
Population of city: under 1 million, 1 million - 2.99 million, 3 million - 8.99 million, Above 9 million
and/or
Location of city: Asia, Americas, Europe, Africa, or Australia
If you reduced your list of city-related Values from 500 to 4, you would have far, far fewer pairwise tests generated when you click on the Test Cases button.
For more information:
Don't forget to explore Hexawise's Value Expansion feature here. Whenever you reduce the number of Values in Hexawise for a Parameter, you should consider using the Value Expansions feature
See Wikipedia's description of Equivalence Class Partitioning
A simple 2-minute experiment demonstrates how important this lesson is:
- Create 2 test models in Hexawise
- Call the first one "2p20v" (this automatically generates a model with 2 Parameters, 20 Values each)
- Call the second one "20p2v"
- The models will immediately self populate with the appropriate number of Parameters and Values
- The first model has only 400 possible tests. All 400 tests are needed to achieve pairwise coverage.
- The second one has over a million possible tests. Only 11 tests are needed for pairwise coverage!