因果图法
- 因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法
- 它适合于检查程序输入条件的各种组合情况
a. 因—输入条件
b. 果—输出结果
适用场景
- 描述多种条件的组合
- 产生多个动作
因果图的基本符号
- 恒等:若原因出现,则结果出现,若原因不出现,则结果也不出现
- 非:若原因出现,则结果不出现,若原因不出现,则结果出现
- 或:有多个原因,若几个原因中有一个出现,则结果出现,若几个原因都不出现,则结果不出现
因果图中的约束条件
- 互斥 E :a,b,c只能有一个成立,但是可以都不成立,
- 包含 I :a,b,c至少有一个成立
- 唯一 O :a,b,c有且只有一个成立
- 要求 R :如果a成立,则要求b必须成立,其他的不做约束
- 屏蔽:M 如果a成立的时候,强制b不成立,其他的不约束
因果图法的基本步骤
- 找出所有的输入条件(因)
- 找出所有的输出条件(果)
- 明确所有输入条件之间的制约关系以及组合关系
- 明确所有输出条件之间的制约关系以及组合关系
- 找出什么样的输入条件组合会产生哪种输出结果
- 把因果图转换成判定表
- 为判定表中的每一列表示的情况设计测试用例
栗子
交通一卡通自动充值的软件系统
需求解释
- 系统只接受50或100元纸币,一次只能使用一张纸币,一次充值的金额只能为50或100元
- 在请投币的后面按50元按钮,代表投入50元纸币,按100元按钮,代表投入100元纸币
- 若按50元按钮,并选择充值50元,完成充值,提示充值成功
- 若按50元按钮,并选择充值100元,提示输入金额不足,退回50元
- 若按100元按钮,并选择充值50元,完成充值,提示充值成功,退回50元
- 若按100元按钮,并选择充值100元,完成充值,提示充值成功
- 若按投币按钮后在规定的实践不选择充值按钮,提示错误,退回投入纸币
- 若选择充值按钮后不按投币按钮,提示错误
根据输入输出关系 制作判定表
转化为测试用例
在这里插入图片描述