g.排他性约束:各个原因之间不能同时为真, 但可以同时为假。
h.包含性约束:各个原因中总有一个为真。即可以同时为真,但不可以同时为假。
i.必要性约束:当原因a为真时,原因b必须同时为真
j.唯一性约束:有且只有原因a和原因b中的一个为真但是原因b为真时,原因a既可以为真,也可以为假。
k. 掩码标记(结果约束):如果结果b为真,那么结果a一定为假,如果结果b为假,则结果a的状态不定
举例一: 以多多自走棋为例,玩家查看图鉴中的棋子:第一步必须是A(点击仓库)或B(点击大厅右上角图鉴按钮),第二步必须是C(点击棋子图鉴),在此情况下玩家进入到棋子图鉴界面,但如果第一步不正确,得出结论L;如果第二步骤不是C,则得出结论M。 首先我们整理一下,得出以下信息以及因果图:
根据题意,原因和结果如下:
原因:
1——第一步是A;
2——第一步是B;
3——第二步是点击棋子图鉴。
结果:
21——进入棋子图鉴;
22——得出结论L;
23——得出结论M。
其对应的因果图如下:
11为中间节点;考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束。
根据因果图建立判定表: 因为 一般可以根据因果图画出判定表,判定表里只有0,1(1代表真,0代表假)两个数字。若输入条件有n个,则用例考虑的情况有2n种,即8种:
1 2 3 4 5 6 7 8条件(原因) 1 1 1 1 1 0 0 0 0
条件(原因) 2 1 1 0 0 1 1 0 0
条件(原因) 3 1 0 1 0 1 0 1 0
条件(原因) 11 1 1 1 1 0 0
动作(结果) 22 0 0 0 0 1 1
动作(结果) 21 1 0 1 0 0 0
动作(结果) 23 0 1 0 1 0 1
表中8种情况的左面两列情况中,原因①和原因②同时为1,这是不可能出现的,故应排除这两种情况。表的最下一栏给出了6种情况的测试用例,这是我们所 需要的数据。所以用例有:
a.1,3------21
b.1-----23
c.2,3----21
d.2-----23
e.3---22
f.不进行任何操作-----22,23
6. 正交试验法