因果图分析法[通俗易懂]

因果图分析法[通俗易懂]目录一、因果图法1.理解二、因果图需要掌握的基本知识1.关系2.约束3.输出条件的约束4.输出条件的约束5.原因和结果表示6.中间节点三、因果图设计测试用例的步骤四、优缺点1.优点2.缺点五、实例1.案例2.分析案例六、为什么要有中间节点1.无中间节点因果图2.有中间节点因果图一、因果图法1.理解因果图是一种简化了的逻辑图,能直观的表明程序输入条件(原因)和输出动作(结果)之间的相互关系; 因果图法是借助图形来设计测试

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

一、因果图法

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.有中间节点因果图

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

因果图分析法[通俗易懂]

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170400.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 华硕笔记本安装centos后wifi无法开启bug

    华硕笔记本安装centos后wifi无法开启bugqqq

    2022年10月21日
    0
  • TFS 2010 让安装更简单,也让VSS成为历史「建议收藏」

    TFS 2010 让安装更简单,也让VSS成为历史「建议收藏」      一转眼VS2010RC(ReleaseCandidate)版本已经发布一月多了,RTM(ReleaseToManufacturer)版本也快妥了,已经进入了最后的倒计时,只等4月12号发布了。TFS2010也将一起正式发布,相对于2005和2008,2010将是具有里程碑意义的一个版本,就像它总设计师BrianHarry在下面的Channel9采访中所描述的:“T

    2022年9月24日
    0
  • Ubuntu 下安装金山词霸替代软件

    Ubuntu 下安装金山词霸替代软件

    2021年4月27日
    161
  • hashmap的扩容原理_HashMap

    hashmap的扩容原理_HashMap本篇文章分别讲解JDK1.7和JDK1.8下的HashMap底层实现原理文章目录一、什么是HashMap?二、为什么要使用HashMap?三、HashMap扩容为什么总是2的次幂四、JDk1.7扩容死循环问题五、JDK1.8的新结构1.为什么非要使用红黑树呢?2.什么是红黑树?3.红黑树的特性一、什么是HashMap?HashMap数据结构为数组+链表(JDk1.7),JDK1.8中增加了红黑树,其中:链表的节点存储的是一个Entry对象,每个Entry对象存储四个属性(hash,key,v

    2022年9月21日
    0
  • 网络舆情分析系统具体使用功能及作用详解图_智慧舆情

    网络舆情分析系统具体使用功能及作用详解图_智慧舆情网络舆情即互联网环境下舆论情况的简称,具有直接性、突发性、偏差性等特点。由于国内对于网络舆情研究工作起步较晚,与国外的研究工作相比有一定的差距。当前网络舆情分析还有很多部门主要依靠人工的方法进行收集、处理。由于网络舆情是表达民意的重要场地,其信息量十分巨大,仅仅依靠人工的方法难以应对。需要有个自动化的网络舆情分析系统,及时应对网络舆情。网络舆情分析系统需要具备有以下几大功能:1、及时发现关注相关舆情实时分析全网数据,监测各大网络平台,根据关键词的设置,早发现与之相关的舆情。2、观点倾向性分析对不

    2022年9月20日
    1
  • POJ 1258 Agri-Net

    POJ 1258 Agri-Net

    2022年1月12日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号