Home
Existing User Login
Brochure
Sign up for Risk-Free Trial
About Testcover.com
Frequently Asked Questions
Tutorial with Examples
->UML State Machine
--->Thermostat
--->Test Models
--->Design Procedure
--->tempSet Designs
--->tempControl Designs
--->fanControl Designs
----->Stand-alone Transition
----->Integrated Transition
----->Integrated Target State
Performance
WSDL Interface
Background
Partners
Registrations
Contact Information
|
The Thermostat Example illustrates pairwise testing using a
Unified Modeling Language (UML)
state machine diagram.
This test design is for the fanControl region,
which controls the operation of the fan circulating the air.
It illustrates the integrated transition model, in which states of other regions are included as test factors.
Each state transition in this region has one partition.
Requirements summary.
Control of the air circulation fan is set with a sliding switch having two positions: AUTO and ON.
In the AUTO position the fan is on whenever the furnace or air conditioner is on.
In the ON position, the fan circulates air continually.
Details of the fan control operation are defined
in the fanControl region of the UML state machine diagram.
Test model.
In the fanControl region
there are 3 leaf states: autoOffWait, autoOnWait, fanOn.
There are 8 state transitions corresponding to partitions:
# autoOffWait to autoOffWait
# autoOnWait to autoOffWait
# fanOn to autoOffWait
# autoOffWait to autoOnWait
# autoOnWait to autoOnWait
# fanOn to autoOn
# autoOffWait to fanOn
# autoOnWait to fanOn
|
There are 7 test factors with values as follows.
| Test Factor | Number of Values | Test Factor Values |
| 1. roomTemp | 4 |
49 70 78 100 |
| 2. heatTemp | 4 |
50 69 79 99 |
| 3. coolTemp | 4 |
50 69 79 99 |
| 4. tempSet state | 3 |
idleWait heatKeyWait coolKeyWait |
| 5. tempControl state | 5 |
heatOffWait heatOnWait coolOffWait coolOnWait tempControlOff |
| 6. fanControl state | 3 |
autoOffWait autoOnWait fanOn |
| 7. event | 10 |
A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)]
A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)]
A_OFF_TIMEOUT[else]
A_ON_TIMEOUT[tempControl->is_in(heatOnWait)]
A_ON_TIMEOUT[tempControl->is_in(coolOnWait)]
A_ON_TIMEOUT[else]
AUTO[tempControl->is_in(heatOnWait)]
AUTO[tempControl->is_in(coolOnWait)]
AUTO[else] ON
|
The else trigger events represent events with tempControl in any state other than heatOnWait or coolOnWait.
The test design is constructed following steps 7-11 of the design
procedure.
The relationship between the blocks of the fanControl stand-alone transition design and
those of the integrated transition design are shown in the fanControl mapping table.
Partition 2 of the stand-alone transition design is split into 3 blocks in the integrated transition design
to distinguish among the tempControl else states.
Also partitions 3 and 7 are split to allow the association of on temperatures with the tempControlOff state.
The test case generator request is given below.
The partition prefix FC:aa indicates the region, fanControl (FC),
and the transition, e.g. autoOffWait to autoOffWait (aa),
for each test case.
Thermostat Example - fanControl integrated transition design
roomTemp
heatTemp
coolTemp
tempSet state
tempControl state
fanControl state
event
#FC:aa autoOffWait to autoOffWait
+ autoOffWait to autoOffWait (off temps)
70 78
50 69
79 99
idleWait heatKeyWait coolKeyWait
heatOffWait coolOffWait tempControlOff
autoOffWait
A_OFF_TIMEOUT[else]
#FC:Aa autoOnWait to autoOffWait
+ autoOnWait to autoOffWait (off temps, after heatOnWait)
70
69
79 99
idleWait heatKeyWait coolKeyWait
heatOffWait
autoOnWait
A_ON_TIMEOUT[else]
+ autoOnWait to autoOffWait (off temps, after coolOnWait)
78
50 69
79
idleWait heatKeyWait coolKeyWait
coolOffWait
autoOnWait
A_ON_TIMEOUT[else]
+ autoOnWait to autoOffWait (on temps)
70 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
tempControlOff
autoOnWait
A_ON_TIMEOUT[else]
#FC:Fa fanOn to autoOffWait
+ fanOn to autoOffWait (off temps)
70 78
50 69
79 99
idleWait heatKeyWait coolKeyWait
heatOffWait coolOffWait tempControlOff
fanOn
AUTO[else]
+ fanOn to autoOffWait (on temps)
70 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
tempControlOff
fanOn
AUTO[else]
#FC:aA autoOffWait to autoOnWait
+ autoOffWait to autoOnWait (heat)
49 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
heatOnWait
autoOffWait
A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)]
+ autoOffWait to autoOnWait (cool)
70 100
79 99
50 69
idleWait heatKeyWait coolKeyWait
coolOnWait
autoOffWait
A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)]
#FC:AA autoOnWait to autoOnWait
+ autoOnWait to autoOnWait (heat)
49 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
heatOnWait
autoOnWait
A_ON_TIMEOUT[tempControl->is_in(heatOnWait)]
+ autoOnWait to autoOnWait (cool)
70 100
79 99
50 69
idleWait heatKeyWait coolKeyWait
coolOnWait
autoOnWait
A_ON_TIMEOUT[tempControl->is_in(coolOnWait)]
#FC:FA fanOn to autoOnWait
+ fanOn to autoOnWait (heat)
49 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
heatOnWait
fanOn
AUTO[tempControl->is_in(heatOnWait)]
+ fanOn to autoOnWait (cool)
70 100
79 99
50 69
idleWait heatKeyWait coolKeyWait
coolOnWait
fanOn
AUTO[tempControl->is_in(coolOnWait)]
#FC:aF autoOffWait to fanOn
+ autoOffWait to fanOn (off temps)
70 78
50 69
79 99
idleWait heatKeyWait coolKeyWait
heatOffWait coolOffWait tempControlOff
autoOffWait
ON
+ autoOffWait to fanOn (on temps)
70 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
tempControlOff
autoOffWait
ON
#FC:AF autoOnWait to fanOn
+ autoOnWait to fanOn (on temps)
70 78
79 99
50 69
idleWait heatKeyWait coolKeyWait
heatOnWait coolOnWait tempControlOff
autoOnWait
ON |
The fanControl region has 96 test cases in 8 partitions in the integrated transition design.
The results tables follow.
#1.
autoOffWait to autoOffWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 2 Values | 2 Values | 2 Values | 3 Values | 3 Values | 1 Value | 1 Value | 82 |
| FC:aa1 | 70 | 69 | 79 | coolKeyWait | tempControlOff | autoOffWait | A_OFF_TIMEOUT[else] | 61 |
| FC:aa2 | 78 | 50 | 99 | idleWait | tempControlOff | autoOffWait | A_OFF_TIMEOUT[else] | 43 |
| FC:aa3 | 78 | 50 | 79 | heatKeyWait | coolOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 30 |
| FC:aa4 | 70 | 69 | 99 | heatKeyWait | heatOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 19 |
| FC:aa5 | 70 | 69 | 99 | idleWait | coolOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 13 |
| FC:aa6 | 78 | 69 | 99 | coolKeyWait | heatOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 8 |
| FC:aa7 | 78 | 50 | 79 | idleWait | heatOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 4 |
| FC:aa8 | 70 | 50 | 99 | coolKeyWait | coolOffWait | autoOffWait | A_OFF_TIMEOUT[else] | 1 |
| FC:aa9 | 70 | 50 | 79 | heatKeyWait | tempControlOff | autoOffWait | A_OFF_TIMEOUT[else] | 0 |
The test cases in partition 1 test the timeout transition from autoOffWait to autoOffWait
with all pairs of tempSet and tempControl else states (not heatOnWait or coolOnWait).
Test case set-up is illustrated for FC:aa1 below.
FC:aa1 is set up by setting the temperature sensor simulator to 70, heatTemp to 69, and coolTemp to 79.
The mode switch is set to OFF, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, tempControlOff, and autoOffWait,
the SET button is pressed twice to take the tempSet state to coolKeyWait
before the autoOffWait timeout occurs.
#2.
autoOnWait to autoOffWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 2 Values | 4 Values | 4 Values | 3 Values | 3 Values | 1 Value | 1 Value | 134 |
| FC:Aa1 | 70 | 69 | 79 | idleWait | heatOffWait | autoOnWait | A_ON_TIMEOUT[else] | 113 |
| FC:Aa2 | 78 | 99 | 69 | heatKeyWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 93 |
| FC:Aa3 | 78 | 50 | 79 | coolKeyWait | coolOffWait | autoOnWait | A_ON_TIMEOUT[else] | 77 |
| FC:Aa4 | 70 | 79 | 50 | heatKeyWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 64 |
| FC:Aa5 | 70 | 69 | 99 | coolKeyWait | heatOffWait | autoOnWait | A_ON_TIMEOUT[else] | 55 |
| FC:Aa6 | 78 | 99 | 50 | idleWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 49 |
| FC:Aa7 | 78 | 69 | 79 | heatKeyWait | coolOffWait | autoOnWait | A_ON_TIMEOUT[else] | 44 |
| FC:Aa8 | 70 | 99 | 69 | coolKeyWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 39 |
| FC:Aa9 | 70 | 79 | 69 | idleWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 36 |
| FC:Aa10 | 78 | 79 | 50 | coolKeyWait | tempControlOff | autoOnWait | A_ON_TIMEOUT[else] | 33 |
| FC:Aa11 | 70 | 69 | 99 | heatKeyWait | heatOffWait | autoOnWait | A_ON_TIMEOUT[else] | 31 |
| FC:Aa12 | 78 | 50 | 79 | idleWait | coolOffWait | autoOnWait | A_ON_TIMEOUT[else] | 29 |
| FC:Aa13 | 70 | 69 | 99 | idleWait | heatOffWait | autoOnWait | A_ON_TIMEOUT[else] | 28 |
| FC:Aa14 | 78 | 50 | 79 | heatKeyWait | coolOffWait | autoOnWait | A_ON_TIMEOUT[else] | 27 |
The test cases in partition 2 test the timeout transition from autoOnWait to autoOffWait
with all pairs of tempSet and tempControl else states (not heatOnWait or coolOnWait).
Each of these test cases includes a transient pair of current states,
a tempControl else state with autoOnWait,
before the autoOnWait timeout.
The test cases are set up with tempControl in the heatOnWait or coolOnWait state, as illustrated for FC:Aa2 and FC:Aa3 below.
FC:Aa2 is set up by setting the temperature sensor simulator to 78, heatTemp to 99, and coolTemp to 69.
The mode switch is set to HEAT, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, heatOnWait, and autoOnWait,
the SET button is pressed to take the tempSet state to heatKeyWait.
The mode switch is moved from HEAT to OFF before the heatkeyWait and autoOnWait timeouts occur.
FC:Aa3 is set up by setting the temperature sensor simulator to 100, heatTemp to 50, and coolTemp to 79.
The mode switch is set to COOL, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, coolOnWait, and autoOnWait,
the SET button is pressed twice to take the tempSet state to coolKeyWait.
The temperature sensor simulator is set to 78, and the SET button is pressed three times,
to set the roomTemp value in the idleWait state and
to return the tempSet region to the coolKeyWait state
before the autoOnWait timeout occurs.
#3.
fanOn to autoOffWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 2 Values | 4 Values | 4 Values | 3 Values | 3 Values | 1 Value | 1 Value | 134 |
| FC:Fa1 | 70 | 69 | 79 | coolKeyWait | tempControlOff | fanOn | AUTO[else] | 113 |
| FC:Fa2 | 78 | 50 | 99 | idleWait | tempControlOff | fanOn | AUTO[else] | 95 |
| FC:Fa3 | 78 | 99 | 69 | heatKeyWait | tempControlOff | fanOn | AUTO[else] | 80 |
| FC:Fa4 | 70 | 79 | 50 | heatKeyWait | tempControlOff | fanOn | AUTO[else] | 68 |
| FC:Fa5 | 70 | 69 | 99 | idleWait | coolOffWait | fanOn | AUTO[else] | 58 |
| FC:Fa6 | 78 | 69 | 99 | coolKeyWait | heatOffWait | fanOn | AUTO[else] | 49 |
| FC:Fa7 | 78 | 50 | 79 | heatKeyWait | coolOffWait | fanOn | AUTO[else] | 41 |
| FC:Fa8 | 70 | 69 | 99 | heatKeyWait | heatOffWait | fanOn | AUTO[else] | 37 |
| FC:Fa9 | 78 | 50 | 79 | idleWait | heatOffWait | fanOn | AUTO[else] | 33 |
| FC:Fa10 | 70 | 99 | 69 | coolKeyWait | tempControlOff | fanOn | AUTO[else] | 29 |
| FC:Fa11 | 78 | 79 | 50 | coolKeyWait | tempControlOff | fanOn | AUTO[else] | 25 |
| FC:Fa12 | 70 | 50 | 99 | coolKeyWait | coolOffWait | fanOn | AUTO[else] | 22 |
| FC:Fa13 | 70 | 79 | 69 | idleWait | tempControlOff | fanOn | AUTO[else] | 19 |
| FC:Fa14 | 78 | 99 | 50 | idleWait | tempControlOff | fanOn | AUTO[else] | 16 |
The test cases in partition 3 test the fan switch transition from fanOn to autoOffWait
with all pairs of tempSet and tempControl else states (not heatOnWait or coolOnWait).
Test case set-up is illustrated for FC:Fa1 below.
FC:Fa1 is set up by setting the temperature sensor simulator to 70, heatTemp to 69, and coolTemp to 79.
The mode switch is set to OFF, and the fan switch is set to ON.
After the tempSet, tempControl, and fanControl states are idleWait, tempControlOff, and fanOn,
the SET button is pressed twice to take the tempSet state to coolKeyWait.
The fan switch is moved from ON to AUTO before the coolkeyWait timeout occurs.
#4.
autoOffWait to autoOnWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 4 Values | 2 Values | 2 Values | 3 Values | 2 Values | 1 Value | 2 Values | 107 |
| FC:aA1 | 49 | 99 | 69 | coolKeyWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 86 |
| FC:aA2 | 70 | 79 | 50 | heatKeyWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 65 |
| FC:aA3 | 78 | 99 | 50 | idleWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 51 |
| FC:aA4 | 100 | 99 | 69 | heatKeyWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 39 |
| FC:aA5 | 49 | 79 | 69 | idleWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 32 |
| FC:aA6 | 100 | 79 | 50 | coolKeyWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 25 |
| FC:aA7 | 78 | 99 | 69 | heatKeyWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 21 |
| FC:aA8 | 70 | 79 | 69 | idleWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 17 |
| FC:aA9 | 49 | 79 | 50 | heatKeyWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 15 |
| FC:aA10 | 78 | 79 | 50 | coolKeyWait | heatOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(heatOnWait)] | 13 |
| FC:aA11 | 70 | 99 | 69 | coolKeyWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 11 |
| FC:aA12 | 100 | 99 | 50 | idleWait | coolOnWait | autoOffWait | A_OFF_TIMEOUT[tempControl->is_in(coolOnWait)] | 10 |
The test cases in partition 4 test the timeout transition from autoOffWait to autoOnWait
with all pairs of tempSet and tempControl on states (heatOnWait or coolOnWait).
Each of these test cases includes a transient pair of current states,
a tempControl on state with autoOffWait, before the autoOffWait timeout.
Test case set-up is illustrated for FC:aA1 below.
FC:aA1 is set up by setting the temperature sensor simulator to 49, heatTemp to 99, and coolTemp to 69.
The mode switch is set to OFF, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, tempControlOff, and autoOffWait,
the SET button is pressed twice to take the tempSet state to coolKeyWait.
The mode switch is moved from OFF to HEAT before the coolkeyWait and autoOffWait timeouts occur.
#5.
autoOnWait to autoOnWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 4 Values | 2 Values | 2 Values | 3 Values | 2 Values | 1 Value | 2 Values | 107 |
| FC:AA1 | 49 | 99 | 69 | coolKeyWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 86 |
| FC:AA2 | 70 | 79 | 50 | heatKeyWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 65 |
| FC:AA3 | 78 | 99 | 50 | idleWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 51 |
| FC:AA4 | 100 | 99 | 69 | heatKeyWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 39 |
| FC:AA5 | 49 | 79 | 69 | idleWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 32 |
| FC:AA6 | 100 | 79 | 50 | coolKeyWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 25 |
| FC:AA7 | 78 | 99 | 69 | heatKeyWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 21 |
| FC:AA8 | 70 | 79 | 69 | idleWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 17 |
| FC:AA9 | 49 | 79 | 50 | heatKeyWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 15 |
| FC:AA10 | 78 | 79 | 50 | coolKeyWait | heatOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(heatOnWait)] | 13 |
| FC:AA11 | 70 | 99 | 69 | coolKeyWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 11 |
| FC:AA12 | 100 | 99 | 50 | idleWait | coolOnWait | autoOnWait | A_ON_TIMEOUT[tempControl->is_in(coolOnWait)] | 10 |
The test cases in partition 5 test the timeout transition from autoOnWait to autoOnWait
with all pairs of tempSet and tempControl on states (heatOnWait or coolOnWait).
Test case set-up is illustrated for FC:AA1 below.
FC:AA1 is set up by setting the temperature sensor simulator to 49, heatTemp to 99, and coolTemp to 69.
The mode switch is set to HEAT, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, heatOnWait, and autoOnWait,
the SET button is pressed twice to take the tempSet state to coolKeyWait
before the autoOnWait timeout occurs.
#6.
fanOn to autoOnWait
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 4 Values | 2 Values | 2 Values | 3 Values | 2 Values | 1 Value | 2 Values | 107 |
| FC:FA1 | 49 | 99 | 69 | coolKeyWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 86 |
| FC:FA2 | 70 | 79 | 50 | heatKeyWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 65 |
| FC:FA3 | 78 | 99 | 50 | idleWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 51 |
| FC:FA4 | 100 | 99 | 69 | heatKeyWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 39 |
| FC:FA5 | 49 | 79 | 69 | idleWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 32 |
| FC:FA6 | 100 | 79 | 50 | coolKeyWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 25 |
| FC:FA7 | 78 | 99 | 69 | heatKeyWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 21 |
| FC:FA8 | 70 | 79 | 69 | idleWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 17 |
| FC:FA9 | 49 | 79 | 50 | heatKeyWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 15 |
| FC:FA10 | 78 | 79 | 50 | coolKeyWait | heatOnWait | fanOn | AUTO[tempControl->is_in(heatOnWait)] | 13 |
| FC:FA11 | 70 | 99 | 69 | coolKeyWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 11 |
| FC:FA12 | 100 | 99 | 50 | idleWait | coolOnWait | fanOn | AUTO[tempControl->is_in(coolOnWait)] | 10 |
The test cases in partition 6 test the fan switch transition from fanOn to autoOnWait
with all pairs of tempSet and tempControl on states (heatOnWait or coolOnWait).
Test case set-up is illustrated for FC:FA1 below.
FC:FA1 is set up by setting the temperature sensor simulator to 49, heatTemp to 99, and coolTemp to 69.
The mode switch is set to HEAT, and the fan switch is set to ON.
After the tempSet, tempControl, and fanControl states are idleWait, heatOnWait, and fanOn,
the SET button is pressed twice to take the tempSet state to coolKeyWait.
The fan switch is moved from ON to AUTO before the coolkeyWait timeout occurs.
#7.
autoOffWait to fanOn
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 2 Values | 4 Values | 4 Values | 3 Values | 3 Values | 1 Value | 1 Value | 134 |
| FC:aF1 | 70 | 69 | 79 | coolKeyWait | tempControlOff | autoOffWait | ON | 113 |
| FC:aF2 | 78 | 50 | 99 | idleWait | tempControlOff | autoOffWait | ON | 95 |
| FC:aF3 | 78 | 99 | 69 | heatKeyWait | tempControlOff | autoOffWait | ON | 80 |
| FC:aF4 | 70 | 79 | 50 | heatKeyWait | tempControlOff | autoOffWait | ON | 68 |
| FC:aF5 | 70 | 69 | 99 | idleWait | coolOffWait | autoOffWait | ON | 58 |
| FC:aF6 | 78 | 69 | 99 | coolKeyWait | heatOffWait | autoOffWait | ON | 49 |
| FC:aF7 | 78 | 50 | 79 | heatKeyWait | coolOffWait | autoOffWait | ON | 41 |
| FC:aF8 | 70 | 69 | 99 | heatKeyWait | heatOffWait | autoOffWait | ON | 37 |
| FC:aF9 | 78 | 50 | 79 | idleWait | heatOffWait | autoOffWait | ON | 33 |
| FC:aF10 | 70 | 99 | 69 | coolKeyWait | tempControlOff | autoOffWait | ON | 29 |
| FC:aF11 | 78 | 79 | 50 | coolKeyWait | tempControlOff | autoOffWait | ON | 25 |
| FC:aF12 | 70 | 50 | 99 | coolKeyWait | coolOffWait | autoOffWait | ON | 22 |
| FC:aF13 | 70 | 79 | 69 | idleWait | tempControlOff | autoOffWait | ON | 19 |
| FC:aF14 | 78 | 99 | 50 | idleWait | tempControlOff | autoOffWait | ON | 16 |
The test cases in partition 7 test the fan switch transition from autoOffWait to fanOn
with all pairs of tempSet and tempControl else states (not heatOnWait or coolOnWait).
Test case set-up is illustrated for FC:aF1 below.
FC:aF1 is set up by setting the temperature sensor simulator to 70, heatTemp to 69, and coolTemp to 79.
The mode switch is set to OFF, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, tempControlOff, and autoOffWait,
the SET button is pressed twice to take the tempSet state to coolKeyWait.
The fan switch is moved from AUTO to ON before the coolkeyWait and autoOffWait timeouts occur.
#8.
autoOnWait to fanOn
Test Case ID |
roomTemp |
heatTemp |
coolTemp |
tempSet state |
tempControl state |
fanControl state |
event |
Combo Countdown |
| 2 Values | 2 Values | 2 Values | 3 Values | 3 Values | 1 Value | 1 Value | 82 |
| FC:AF1 | 70 | 99 | 50 | coolKeyWait | tempControlOff | autoOnWait | ON | 61 |
| FC:AF2 | 78 | 79 | 69 | idleWait | tempControlOff | autoOnWait | ON | 43 |
| FC:AF3 | 78 | 79 | 50 | heatKeyWait | coolOnWait | autoOnWait | ON | 30 |
| FC:AF4 | 70 | 99 | 69 | heatKeyWait | heatOnWait | autoOnWait | ON | 19 |
| FC:AF5 | 70 | 99 | 69 | idleWait | coolOnWait | autoOnWait | ON | 13 |
| FC:AF6 | 78 | 99 | 69 | coolKeyWait | heatOnWait | autoOnWait | ON | 8 |
| FC:AF7 | 78 | 79 | 50 | idleWait | heatOnWait | autoOnWait | ON | 4 |
| FC:AF8 | 70 | 79 | 69 | coolKeyWait | coolOnWait | autoOnWait | ON | 1 |
| FC:AF9 | 70 | 79 | 50 | heatKeyWait | tempControlOff | autoOnWait | ON | 0 |
The test cases in partition 8 test the fan switch transition from autoOnWait to fanOn
with all pairs of tempSet states and the tempControl states heatOnWait, coolOnWait, and tempControlOff.
Test cases FC:AF1, FC:AF2, and FC:AF9 include the transient pair of current states
tempControlOff with autoOnWait before the autoOnWait timeout.
The test cases are set up with tempControl in the heatOnWait or coolOnWait state, as illustrated for FC:AF2 and FC:AF3 below.
FC:AF2 is set up by setting the temperature sensor simulator to 78, heatTemp to 79, and coolTemp to 69.
The mode switch is set to HEAT, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, heatOnWait, and autoOnWait,
the mode switch is moved from HEAT to OFF,
and the fan switch is moved from AUTO to ON
before the autoOnWait timeout occurs.
FC:AF3 is set up by setting the temperature sensor simulator to 78, heatTemp to 79, and coolTemp to 50.
The mode switch is set to COOL, and the fan switch is set to AUTO.
After the tempSet, tempControl, and fanControl states are idleWait, coolOnWait, and autoOnWait,
the SET button is pressed to take the tempSet state to heatKeyWait.
The fan switch is moved from AUTO to ON before the heatKeyWait and autoOnWait timeouts occur.
|