一、因果图概述
- 因果图是从需求中找出因(输入条件)和果(输出或程序状态的改变),通过分析输入条件之间的关系(组合关系、约束关系等)及输入和输出之间的关系绘制出因果图,再转化成判定表,从而设计出测试用例的方法。
- 该方法主要适用于各种输入条件之间存在某种相互制约关系或输出结果依赖于各种输入条件的组合时的情况
- 注意: 1)所有的输入输出条件的相互制约关系以及组合关系 2)输出结果对输入条件的依赖关系。也就是什么样的输入组合会产生怎样的输出结果,即“因果关系”
二、因果图符号与关系
- 条件和结果之间的关系:左侧节点表示输入状态即原因,右侧节点表示输出状态即结果
- 条件与条件之间的关系
- 要求案例:qq做自动登录时,勾选自动登录,那么就一定要求勾上记住密码。
三、因果图分析步骤
- 找出所有原因,原因即输入条件或输入条件的等价类;找出所有的结果,结果即输出结果;
- 明确所有输入条件之间的关系;明确所有输出结果之间的关系
- 找出什么样的输入条件组合会出现哪种输出结果,画出因果图;
- 把因果图转换成判定表(决策表);
- 为判定表(决策表)中的每一列表示的情况设计测试用例。
四、案例实战
交通一卡通自动充值软件系统需求:
系统只接收50元或100元纸币,一次充值自能使用一张纸币,一次充值金额只能为50元或100元
若输入50元纸币,并选择充值50元,完成充值后退卡,提示充值成功;
若输入50元纸币,并选择充值100元,提示输入金额不足,并退回50元;
若输入100元纸币,并选择充值50元,完成充值后退卡,提示充值成功,并找零50元;
若输入100元纸币,并选择充值100元,完成充值后退卡,提示充值成功;
若输入纸币后在规定时间内不选择充值按钮,退回输入的纸币,提示错误;
若选择充值按钮后不输入纸币,提示错误
- 步骤一:找出所有条件和结果
- 步骤二:画出因果图
- 步骤三:根据因果图得出判定表
- 步骤四:根据判定表编写用例,每一列写一条用例
用因果图设计测试用例的方法你学会了没?
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取