使用因果图法设计测试用例
因为工作中对测试用例的要求没有那么严格,所以,已经很久没有正儿八经的去设计测试用例了,最近因为个人原因重新梳理设计测试用例的方法,对因果图法有了更深的理解。
什么情况下会用到因果图设计方法?利用图解法分析各种组合情况,它适用于检查程序输入条件的各种组合情况。
等价类划分和边界值分析都是着重考虑输入条件 ,但没有考虑输入条件的各种组合,输入条件之间的相互制约关系。
虽然各种输入条件可能出错的情况考虑到了,但多个输入条件组合起来可能出错的情况却被忽视了。
如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合,相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图。
下面通过案例与大家分享,因果图法的设计思路。
案例:交通一卡通自动充值软件
需求:
系统只接收50元 或100元纸币,一次只能使用一张纸币,一次充值金额只能为50元或100元;
若输入50元纸币,并选择充值50元,完成充值后退卡,提示充值成功;
若输入50元纸币,并选择充值100元,提示输入金额不足,并退回50元;
若输入100元纸币,并选择充值50元,完成充值后退卡,提示充值成功,找零50元;
若输入100元纸币,并选择充值100元,完成充值后退卡,提示充值成功;
若输入纸币后在规定时间内不选择充值按钮,退回输入的纸币,并提示错误;
若选择充值按钮后不输入纸币,提示错误。
操作步骤:
1.找出所有的原因,原因即输入条件或输入条件的等价类
2.找出所有的结果,结果即输出条件
3.明确所有输入条件之间的制约关系以及组合关系。哪些条件不能组合到一起,哪些条件可以组合到一起
4.明确所有输出条件之间的制约关系以及组合关系,哪些输出结果不能同时输出,哪些输出结果可以同时输出
5.找出什么样的输入条件组合会产生哪种输出结果
6.把因果图转换为判定表/决策表
7.为判定表/决策表中的每一列表示的情况设计测试用例
操作:
一、找出所有条件
1.输入50元
2.输入100元
3.选择充值50元
4.选择充值100元
二、找出所有结果
a.完成充值后,退卡
b.提示充值成功
c.退回50元/100元--找零
d.提示错误
三、明确条件与条件、结果与结果、条件与结果的关系
条件1和条件2不能组合;
条件3和条件4不能组合;
条件1和条件3可以组合;
条件1和条件4可以组合;
条件2和条件3可以组合;
条件2和条件4可以组合;
条件1234可以单独出现。
结果a和结果d不能组合;
结果b和结果d不能组合;
结果a和结果b必须组合;
结果abc可以组合;
结果c和结果d是可以组合;
结果d可以单独出现。
根据以上文字画出因果图
条件与条件的关系、结果与结果的关系(E是互斥不能同时存在,R是要求必须同时存在)

条件与结果的关系
1.

2.

3.

4.

5.

6.

7.

8.

根据以上1-8的因果图,把因果图转换为决策表(判定表)

为判定表/决策表中的每一列表示的情况设计测试用例


浙公网安备 33010602011771号