黑盒测试方法论-因果图
- 因果图定义
因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法
它适合于检查程序输入条件的各种组合情况
“因” —— 输入条件
“果” —— 输出结果
- 因果图适用场景
描述多种条件的组合
产生多个动作
- 因果图中的基本符号
恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现
非:若原因出现,则结果不出现;若原因不出现,则结果出现
或:有多个原因。若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现
与:有多个原因。若几个原因都出现,则结果才出现;若其中一个原因不出现,则结果不出现
- 因果图中的约束条件
互斥 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 元,完成充值,提示充值成功
若按投币按钮后在规定时间内不选择充值按钮,提示错误,退回投入纸币
若选择充值按钮后不按投币按钮,提示错误
- 找到所有输入条件编号
选择投币 50 元
选择投币 100 元
选择充值 50 元
选择充值 100 元
- 找到所有输出条件编号
完成充值
提示充值成功
退回纸币
提示错误
- 画图分析输入和输出的关系
条件 1、3 组合 – 输出 a、b
- 图转化为表格
- 分析输入和输出的关系
条件 1、4 组合 – c、d
条件 2、3 组合 – a、b、c
条件 2、4 组合 – a、b
条件 1 单独出现 – c、d
条件 2 单独出现 – c、d
条件 3 单独出现 – d
条件 4 单独出现 – d
- 转化为表格
-转化为测试用例