Testing is a crucial part of the software creation process. It ensures that your code is working correctly and that all bugs are found before the software lands in the hands of consumers. But it can be difficult to explain these tests and their results to investors...
Use Equivalence Classes or similar methods rather than long lists of Values
Learn parameter definition strategies for creating the most efficient set of DesignWise tests.
Long lists of Values always result in large numbers of tests
- 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 DesignWise
- Population of city: under 1 million, 1 million – 2.99 million, 3 million – 8.99 million, Above 9 million
- 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 DesignWise’s Value Expansion 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 DesignWise
Call the first one “2p20v” (this automatically generates a model with 2 Parameters with 20 Values each)
Call the second one “20p2v”
The first model has only 400 possible tests. All 400 tests are needed to achieve pairwise coverage.
The second model has over a million possible tests. Only 11 tests are needed for pairwise coverage!