一、因果图法概念

1、等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合,输入条件之间的相互制约关系。

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

3、因果图法考虑了输入情况的各种组合及输出情况之间的相互制约关系

二、因果图中出现的基本符号

通常在因果图中用Ci表示原因,用Ei表示结果,各结点表示状态,可取值“0”或“1”。“0”表示某状态不出现,“1”表示某状态出现。

三、因果关系

恒等:若C1为1,则e1也为1

非:若C1为1,则e1为0

或:若c1或c2或c3为1,则e1为1

与:若c1和c2都为1,则e1为1

四、约束

1、实际问题当中,输入状态相互之间,输出状态相互之间可能存在某些依赖关系,称为“约束”

2、对于输入条件之间的约束有E(Exclusive or)、I(In)、O(Only)、R(Request)四种约束

3、对于输出条件的约束只有M(Mandate)约束。

4、在因果图中,用特定的符号表明这些约束

五、因果图法设计测试用例步骤

1、根据程序规格说明书描述的内容,分析并确定“原因”和“结果”,找出原因与原因之间,原因与结果之间的对应关系,将其表示成连接各个原因和结果的“因果图”。

2、由于语法或环境限制,有些原因与原因之间、原因与结果之间的组合情况是不可能出现的,在因果上用记号标明约束或限制条件;

3、将因果图转换成判定表

4、根据判定表中每一列设计测试用例

六、因果图法案例

1、程序规格说明要求:

输入的第一个字符必须是“#”或“*”,第二个字符必须是一个数字,在此情况下进行文件的修改;

如果第一个字符不是“#”或“*”,则给出信息N;

如果第二个字符不是数字,则给出信息M。

2、步骤:

2.1 分析程序的规格说明,列出原因和结果;

2.2 找出原因与结果之间的因果关系,原因与原因之间的约束关系,画出因果图。

2.3将因果图转换成判定表;

2.4 根据判定表,设计测试用例的输入数据和预期输出。

2.5 列出原因和结果

原因:c1--第一个字符是“#”

c2--第一个字符是“*”

c3--第二个字符是一个数字

结果:e1--输出信息N

e2--修改文件

e3--给出信息M

2.6 因果图

2.7 将因果图转化为判定表

2.8 设计测试用例

最左边两列,原因c1和c2同时为1不可能,排除掉,根据表可设计出6个测试用例

七、使用因果图法的优点

1、考虑到了输入情况的各种组合以及各个输入情况之间的相互制约关系。

2、能够帮助测试人员按照一定的步骤,高效率的开发测试用例。

3、因果图法是将自然语言规格说明转化成形式语言规格说明的一种严格的方法,可以指出规格说明存在的不完整性和二义性。

功能测试技术--因果图法相关推荐

  1. 功能测试技术--正交试验法及其他

    一.正交试验法概念 因果图进行测试用例设计的不足,作为输入条件的原因和结果之间的因果关系,有时很难从软件需求规格说明书中得到,往往由于因果关系非常庞大,导致利用因果图得到的测试用例数据多的惊人,给软件 ...

  2. 功能测试技术——决策表法

    一.决策表的概念 在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作. 决策表就是分析和表达多逻辑条件下执行不同操作情况的工具. 二.决策 ...

  3. java 鱼刺图_软件测试技术(三)——使用因果图法进行的UI测试

    目标程序 较上次增加两个相同的输入框 使用方法介绍 因果图法 在Introduction to Software Testing by Paul一书中,将软件测试的覆盖标准划分为四类,logical ...

  4. 软件测试用例设计方法-因果图法

    边界值法是等价类划分法的补充,所以,它们是一对搭档. 那么,判定表法有没有它的搭档呢? 答案是,有的.那就是本篇文章分享的用例设计方法-- 因果图法 . 定义 因果图法: 用来处理等价类划分和边界值考 ...

  5. 测试用例设计方法——因果图法

    从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表. 因果图法即因果分析图,又叫特性要因图.石川图或鱼翅图,它是由日本东京大学教授石川馨提 ...

  6. 学习软件测试(三)测试用例、测试用例的设计方法(等价类划分法、边界值分析法、判定表法、因果图法、正交排列法、场景法、错误推测法)

    目录 测试用例 测试用例八大要素 测试用例的设计方法 等价类划分法 等价类操作步骤 边界值分析法 边界范围 边界值法的操作步骤 案例1 案例2 判定表法 为什么使用判定表法 判定表法的四个组成部分 判 ...

  7. 黑盒测试方法之因果图法

    因果图法 因果图法步骤 软件需求示例 测试用例分析设计 总结 因果图法步骤 1)赋标识符.分析软件需求规格说明,找出哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和 ...

  8. 因果图法的介绍与示例分析【转载】

    一. 黑盒测试:是一种常用的软件测试方法,它将被测软件看作一个打不开的黑盒,主要根据功能需求设计测试用例,进行测试.几种常用的黑盒测试方法和黑盒测试工具有,等价类划分法.边界值分析法.因果图法.决策表 ...

  9. 技术玩法大升级,网易MCtalk揭秘社交产品背后的秘密

    随着互联网和科学技术的发展,自媒体.数据.和机器算法重构了内容分发,改变了娱乐产品.社交产品的格局.在新技术业态下,社交风口不断涌现,除了微信.QQ等行业巨头外,各类细分场景的APP也逐渐开始呈现崛起 ...

最新文章

  1. python pip 换源
  2. linux tomcat 配置启动命令,# linux 之 配置tomcat开机自启动(systemctl)
  3. asp.net入门详细介绍
  4. 变量 || 数据类型
  5. C++高斯赛德迭代法,求线性方程组的解(version1.0)
  6. C#控制DataMax指令打印DPL问题总结
  7. 0xbc指令 st75256_DDOS终极加速列车算法
  8. caffe error: #error This file requires compiler and library support for the ISO C++ 2011 standard
  9. 串灯控制盒去掉怎么接_单双向可控硅好坏怎么判断
  10. 【2016年第6期】面向国际的生命组学大数据管理体系建设
  11. ionic 配置java_Ionic 项目配置环境
  12. Windows Server2016+SQL Server 2016 Cluster安装及配置
  13. keras 多GPU训练,单GPU权重保存和预测
  14. 使用CTE来处理树形结构
  15. 基于深度学习技术的智能分类垃圾桶设计方案
  16. PS长图快速切片_PS最常用的100多个快捷键
  17. Win10 1607 频繁断网,迅雷断网以及迅雷下载崩溃解决方案
  18. Python3 Django的补充
  19. JAVA之线程和线程池
  20. 传递闭包+求概率——列项相消法lightoj1321好题

热门文章

  1. 复旦计算机系吴昊,数学科学学院候选好导师访谈——吴昊老师
  2. 几个python运维脚本
  3. 带你了解NLP的词嵌入
  4. 把表中名为'诺基亚xxxx'的商品,改为'HTCxxxx',
  5. numeric_limits用法
  6. oracle 手机壁纸,Android修改手机壁纸功能
  7. 【word 应用篇】word如何插入页码以及word插入图片显示不全的解决方法
  8. 6D姿态估计算法汇总
  9. JBOSS EAP 6 系列七 JPA/hibernate
  10. WPS文档究竟有多好,不服一起跑个分?