The default "pattern" of Hexawise algorithm is that all your scenarios will have the same number of Values. In other words, if you have a plan with 10 Parameters, each test will have exactly 10 Values that are specified for a tester to execute.
But often a system you are testing will have some conditional branching logic that will result in some steps being "skipped" if rules are met. In Hexawise, a common way for designers to indicate that a test condition is not applicable in a given scenario - to specify "N/A" instead of that Value.
In this test design exercise, you will gain some practice dealing with this common test design objective.
I. Create a New Test Plan with the following model elements.
Flying From[New York, Bangalore, Toronto, Sydney]
Flying To[Sydney, Toronto, Bangalore, New York]
Day of Travel[Today, Tomorrow, In 14 Days, In More Than 14 Days]
Include a Car Reservation[Add a Car Reservation, Do Not Include a Car Reservation]
Type of Car[A Modest Vehicle, A Vehicle That Would Make Donald Trump Green with Envy]
Include a Hotel Reservation[Add a Hotel Reservation, Do Not Include a Hotel Reservation]
Type of Hotel[A 5 Star Hotel, A 4 Star Hotel, A 3 Star Hotel, A Bed-Bug Infested Youth Hostel]
Payment Type[Cash, Credit Card]
II. Before You Modify Anything, Create a Set of 2-way Scenarios.
How many tests do you need at this point to achieve 2-way coverage? __________________________
III. Add Constraints to Prevent Impossible to Test for Scenarios from Appearing.
A) Remove all flights scenarios that would have the same "Flying From" and "Flying To" cities.
B) In scenarios that do not include a car reservation, skip the "Type of Car" details.
C) In scenarios that do not include a hotel reservation, skip the "Type of Hotel" details.
IV. Encountered a Problem? Need a Hint?
Unless you figured out that you needed to add an extra Value to each of the "Type of Car" and "Type of Hotel" Parameters, you would have just run into a problem and received an error message.
Why? Because some explicit value needs to appear in every cell in the data table
The Scenarios screen in Hexawise has a table describing what specific Values should get covered in every test. That table does not contain any blank cells. There will be multiple tests in that table that include "Do Not Add a Hotel Reservation". If you created Invalid Pairs so that
"Do Not Add a Hotel" never appears in combination with "5 Star Hotel"
"Do Not Add a Hotel" never appears in combination with "4 Star Hotel"
"Do Not Add a Hotel" never appears in combination with "3 Star Hotel"
"Do Not Add a Hotel" never appears in combination with "A Bed-Bug-Infested Youth Hostel"
... then what would the test optimization algorithm put into the cell for "Type of Hotel" in those scenarios that do not include a hotel reservation?
Given that some specific value will need to appear in that cell, you will need to add a new Value to the "Type of Hotel" Parameter in addition to the 4 options included. Adding "N/A" as a Value in the "Type of Hotel" Parameter will give you a way around this problem.
Note: Advanced Constraints enable the Skip functionality with blank cells in the Scenarios table. Feel free to request the access to the beta version from email@example.com.
V. Add "N/A" to both "Type of Hotel" and "Type of Car"
VI. Add the necessary Constraints to your plan and create scenarios again
VII. Are any N/A's appearing when reservations include Hotels? Or when reservations include Cars? If so, make sure to remove those also.
VIII. Share your updated (fixed) test plan with firstname.lastname@example.org