【答案解析】根据上面的因果图,建立对应的判定表。
在该应用程序中,原因有7个,一个完整的判定表应有2
7=128种情况。由于篇幅的限制,且考虑到5、6、7原因只与中间结果11有关,所以这里将完整的判定表拆分为两个子表,如表13和表14所示。对于结果22、23、24,中间结果是原因,因此在表14中,将11作为原因。
表13 判定表1
|
序号
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
|
原因
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
|
2
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
|
3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
4 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
中间结果 |
11 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
结果 |
21 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
|
测试用例 |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
|
表14 判定表2
|
序号 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
1 2 |
1 3 |
14 |
1 5 |
16 |
|
原因
|
11 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
|
5
|
0
|
0
|
1
|
1 |
0
|
0
|
1
|
1
|
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
|
6 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
7 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
结果 |
22 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
|
23 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
|
24 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
|
测试用例 |
Y |
|
Y |
Y |
Y |
Y |
|
|
Y |
Y |
|
|
|
|
|
|
|
由表13可知,当结点11为1时,结果21为0。由于结果21、22、23、24受到O约束的限制,不能同时为0,所以在表14中的2列是不能出现的情况;同样受到O约束的还有8、12、14和16列;由于E约束,第7、8、11到16列也是不可能出现的情况。在表中用灰框表示。
最后根据判定表设计测试用例。如表14所示,判定表中没有被划去的每一列就是一个测试用例。
[解析]
首先分析走马规则,找出所有的原因以及所有可能的结果,结合题目中找出二者的联系,按照因果图的画法规则,画出因果图。然后按照基于因果图的方法设计测试用例。