因果图分析法

目录

一、因果图法

1.理解

二、因果图需要掌握的基本知识

1.关系

2.约束

3.输出条件的约束

4.输出条件的约束

5.原因和结果表示

6.中间节点

三、因果图设计测试用例的步骤

四、优缺点

1.优点

2.缺点

五、实例

1.案例

2.分析案例

六、为什么要有中间节点

1.无中间节点因果图

2.有中间节点因果图


一、因果图法

1.理解

  • 因果图是一种简化了的逻辑图,能直观的表明程序输入条件(原因)和输出动作(结果)之间的相互关系;
  • 因果图法是借助图形来设计测试用例的一种系统方法;
  • 特别适用于被测试程序具有多种输入条件,程序的输出又依赖于输入条件的各种情况。

二、因果图需要掌握的基本知识

1.关系

  • 恒等

如果原因为真,那么结果必为真。

只有当两个原因都为真的时候结果才为真。

两个原因中,有一个为真,那么结果就为真。

只有原因为假,结果才为真。

 

2.约束

  • 输入状态相互之间还可能存在某些依赖关系,称为约束;例如某些输入条件本身不可能同时出现;
  • 输出状态之间也往往存在约束;
  • 在因果图中,用特定的符号表明这些约束。

3.输出条件的约束

有以下4类

  • E约束(异):a和b中,至多 有一个可能为1,即a和b不能同时为1。
  • I约束(或):a、b、c中至少有一个必须是1,即a、b、c不能同时为0。
  • O约束(唯一):a和b必须有一个,且仅有一个为1。
  • R约束(要求):a是1时,b必须是1,既不能a是1时b是0。

4.输出条件的约束

  • M约束(强制):若结果a是1,则结果b强制为0.

5.原因和结果表示

  • Ci:表示原因
  • Ei:表示结果

6.中间节点

  • 一般都是根据分析需求得到的一个中间结果

三、因果图设计测试用例的步骤

  1. 分析所有可能的输入和可能的输出;
  2. 找出输入与输出之间的关系;
  3. 画出因果图;
  4. 把因果图转化为判定表;
  5. 把判定表对应到每一个测试用例。

四、优缺点

1.优点

  • 考虑到了输入情况的各种组合以及各个输入情况之间的相互制约关系;
  • 能够帮助测试人员按照一定的步骤,高效率的写测试用例;
  • 因果图法是将自然语言规格,转换成形式语言规格说明的一种严格的方法,可以指出规格说明存在的不完整性和二义性。

2.缺点

  • 不同分析者对风险因素重要性的认识不同,会影响因果图分析的结论。

五、实例

1.案例

  • 淘宝在双十一推出打折优惠活动,订单已提交,订单金额大于300或有红包,则优惠。

2.分析案例

(1)对于这条业务规则,分析所有可能的输入和可能的输出,可以得到如下结果

输入(原因):

c1:订单已提交;

c2:订单金额大于300;

c3:有红包。

输出(结果):

e1:不优惠;

e2:优惠。

c:中间节点

(2)然后找出输入与输出之间的关系,通过分析得出以下对应关系

c(中间节点)含义:订单已提交的情况下,有红包和订单金额大于300元满足任意一个的情况。

(3)画因果图

(4)画判定表

说明:0:否;1:是。

(5)把判定表中的每一列转换为测试用例

六、为什么要有中间节点

1.无中间节点因果图

 

2.有中间节点因果图

清晰明了,而且更好转换为判定表。中间节点的含义根据分析需求得到。

 

  • 14
    点赞
  • 130
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
因果图如下: ![因果图](https://i.imgur.com/iJF2XdV.png) 判定表如下: | 条件 | 结果 | 测试用例 | |--------------|------------------|----------------------------------------------------------------| | 员工类型 | 年薪制 | 输入正常的年薪制员工信息,检查是否扣除年终风险金的 2% 或 4% | | 员工类型 | 非年薪制 | 输入正常的非年薪制员工信息,检查是否扣除当月薪资的 4% 或 8% | | 员工类型 | 不合法的员工类型 | 输入不合法的员工类型,如空字符串或其他非法字符,检查是否提示错误 | | 过失程度 | 严重过失 | 输入严重过失员工信息,检查扣款是否符合要求 | | 过失程度 | 普通过失 | 输入普通过失员工信息,检查扣款是否符合要求 | | 过失程度 | 不合法的过失程度 | 输入不合法的过失程度,如空字符串或其他非法字符,检查是否提示错误 | | 年终风险金比率 | 2% | 输入年薪制员工信息,过失程度为普通过失,检查扣款是否符合要求 | | 年终风险金比率 | 4% | 输入年薪制员工信息,过失程度为严重过失,检查扣款是否符合要求 | | 当月薪资比率 | 4% | 输入非年薪制员工信息,过失程度为普通过失,检查扣款是否符合要求 | | 当月薪资比率 | 8% | 输入非年薪制员工信息,过失程度为严重过失,检查扣款是否符合要求 | 测试用例需要根据具体的需求规格说明书和业务场景进行进一步细化和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值