因果图、判定表法
⼀、应⽤场合
在界⾯中有多个控件,控件之间有组合或限制关系,不同的输⼊组合会对应不同的输出结果,如果想弄清楚不同的输⼊组合到底对应哪些输出结果,可以使⽤因果图/判定表法。(因果图/判定表法⽐较适合测试组合数量较少的情况,⼀般少于20种)
⼆、因果图
因(原因):输⼊条件 果(结果):输出结果
因果图:就是通过画图的⽅式来表⽰输⼊条件(因)和输出结果(果)之间的关系。
三、因果图中的图形符号
1、基本图形符号
表⽰的是因与果之间的关系 恒等
如果a=1 ,那么b=1 如果a=0,那么b=0
与
与的含义:只有所有条件都为1时,结果为1,有任何⼀个条件为0(或者所有条件为0)那么结果为0. 简化:全1为1,有0为0 分析过程如下图:
与的图形符号:
或
或的含义:只有所有条件都为0时,结果为0,有任何1个条件为1(或者所有条件为1)时,结果为1 简化:全0为0,有1为1
或的关系图形符号:
⾮:取反
如果a=1,那么b=0 如果a=0,那么b=1
2、限制关系图形符号
限制关系图形要么在因(输⼊条件)之间,要么在果(输出结果)之间。 互斥(E-exclude)
含义:可以不选,如果选只能选1个
唯⼀(O-Only)
含义:有且只有1个(必须要选,⽽且只能选1个) 唯⼀和互斥的区别: 互斥可以不选 唯⼀必须要选1个
包含(I-include)
含义:⾄少选1个(可以多选,不能不选,最少得选1个)
要求(R-required)
含义:如果a=1 那么要求b必须是1,反之如果a=0,那么b值⽆所谓
屏蔽(M-masked)
含义:当a=1时,b=0
当a=0,b的值有可能是1,也有可能是0
四、测试步骤
被测程序:交通⼀卡通充值模拟系统
步骤1:了解需求,找出所有的输⼊条件(因) 投币50元 投币100元 充值50元 充值100元
步骤2:找出所有的输出结果(果) 成功充值并退卡 找零
错误提⽰并退卡
将因和果填⼊《判定表》中
步骤3:找出输⼊条件之间的组合和限制关系。
步骤4:明确不同的输⼊组合会产⽣怎样的输出结果,画因果图,填判定表。(在实际⼯作中可以只填判定表,不画因果图) 五、总结 1、测试步骤
步骤1:分析需求,找出所有的输⼊条件 步骤2:找出所有的输出结果
步骤3:找出输⼊条件中的所有组合和限制关系
步骤4:明确每种输⼊组合对应的输出结果,填判定表,画因果图(熟练后,画因果图可以省略) 说明:
1)画因果图只是⼀种辅助⼯具,通过分析最终得到判定表,再通过判定表编写测试⽤例。但是有时画因果图⽐较⿇烦,影响测试效率,所以在应⽤熟练之后,可以省略画因果图直接填判定表,进⽽编写测试⽤例。
2)判定表的缺点:判定表中输⼊条件的限制关系不好体现。
如何解决:可以在判定表中添加备注,将限制关系写⼊备注部分。 步骤5:根据判定表,编写测试⽤例 每1列表⽰1种组合,写1条⽤例
2、因果图/判定表适合测试控件的组合情况,⽽且适合测试组合数量⽐较少的情况。常见的控件有:按钮(按/不按),单选按钮(选/不选),复选框(选/不选),选项较少的下拉列表等
3、判定表的特点:
1)输⼊条件的顺序是⽆关紧要的 2)输出结果的顺序是⽆关紧要的
3)先测哪种组合,后测哪种组合是⽆关紧要的 4)每种组合之间是相互独⽴的 4、介绍判定表的组成项:
因篇幅问题不能全部显示,请点此查看更多更全内容