04.黑盒测试方法论 - 因果图

发布时间 2023-12-31 20:48:03作者: 想要暴富的小男孩

因果图定义

 
  • 因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法
  • 它适合于检查程序输入条件的各种组合情况
    • “因” —— 输入条件
    • “果” —— 输出结果

因果图适用场景

 
  • 描述多种条件的组合
  • 产生多个动作

因果图中的基本符号

 
  • 恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现
  • 非:若原因出现,则结果不出现;若原因不出现,则结果出现
  • 或:有多个原因。若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现
  • 与:有多个原因。若几个原因都出现,则结果才出现;若其中一个原因不出现,则结果不出现

因果图中的约束条件

 
  • 互斥 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 元,完成充值,提示充值成功
  • 若按投币按钮后在规定时间内不选择充值按钮,提示错误,退回投入纸币
  • 若选择充值按钮后不按投币按钮,提示错误

找到所有输入条件编号

 
  1. 选择投币 50 元
  2. 选择投币 100 元
  3. 选择充值 50 元
  4. 选择充值 100 元

 

找到所有输出条件编号

 
    1. 完成充值
    1. 提示充值成功
    1. 退回纸币
    1. 提示错误

 

画图分析输入和输出的关系

 

条件 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

转化为表格

 

 

转化为测试用例