测试用例的设计方法_因果图
测试用例的设计方法_因果图
因果图
因果图:简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。
因果图法是借助图形来设计测试用例的一种系统方法,特别适用于被测试程序具有多种输入条件、程序的输出又依赖于输入条件的各种情况。
因果图的需要掌握的基本知识
- 恒等
恒等:如果原因为真,那么结果必定为真。 - 与
只有2个原因都为真,那么结果为真 - 或
2个原因中有一个为真时,结果就为真。 - 非
只有原因为假,结果才为真。
因果图法设计测试用例的步骤如下:
(1)分析所有可能的输入和可能的输出。
(2)找出输入与输出之间的对应关系。
(3)画出因果图。
(4)把因果图转换成判定表。
(5)把判定表对应到每一个测试用例。
因果法设计测试用例可以帮助测试人员理清输入和输出的关系,但是对于比较复杂的输入和输出,会耗费大量时间。
案例:
假设业务单据的处理规则为:“淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则进优惠”。
对于这条业务规则,首先通过分析所有可能的输入和可能的输出,可以得到如下结果:
● 输入:订单已提交、金额大于300、有红包。
● 输出:优惠、不优惠。
- 然后,进行第二步,找出输入与输出之间的对应关系。
通过分析,可以看出有以下的对应关系。
(1)订单已提交,订单金额大于300元,则优惠。
(2)订单已提交,订单金额小于等于300元,无红包,不优惠
(3)订单已提交,有红包,则优惠。
(4)订单已提交,订单金额大于300元,有红包,则优惠。
(5)订单未提交,不优惠。 - 为了方便画出因果图和判定表,需要对所有输入和输出编号,现在编号如下:
1:订单已提交。
2:订单金额大于300元。
3:有红包
21:优惠
22:不优惠 - 画因果图
- 画判定表:有3个条件,输出有2个取值,所以表的列数为2x2x2=8
- 最终的测试用例
1,2,3,4,5(包含6,7,8)。
实例
某软件规格说明书包含这样的要求:输入的第一个字符必须是#或*,第二个字符必须是一个数字,在此情况下进行文件修改。若第一个字符不是#或*,给出信息N,若第二个字符不是数字,给出信息M。
输入条件:
C1:第一个字符是#
C2:第一个字符是*
C3:第二个字符是一个数字
输出条件:
E1:给出信息N
E2:允许修改
E3:给出信息M
画出因果图,图中⑩表示一种中间状态,即表示C1和C2形成的一种结果(输入的第一个字符是#或*)
判定表:
测试用例的设计方法_因果图相关推荐
- 测试用例设计方法_因果图法(游戏向)
一.因果图法简介 1.1 什么是因果图法? 因果图(Cuase-effect Graph)是一种描述输入条件的组合以及每种组合对应的输出的图形化工具.在因果图的基础上可以设计测试用例. ...
- 测试用例经典设计方法之 因果图法
01 因果图设计测试用例的步骤 1.分析需求 阅读需求文档,如果User Case很复杂,尽量将它分解成若干个简单的部分.这样做的好处是,不必在一次处理过程中考虑所有的原因.没有固定的流程说明究竟分解 ...
- (转)测试用例的设计方法(全)之二 错误推断、因果图
测试用例的设计方法(全)之二 (3)错误推测方法 一. 方法简介 1. 定义:基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法. 2. ...
- 学习软件测试(三)测试用例、测试用例的设计方法(等价类划分法、边界值分析法、判定表法、因果图法、正交排列法、场景法、错误推测法)
目录 测试用例 测试用例八大要素 测试用例的设计方法 等价类划分法 等价类操作步骤 边界值分析法 边界范围 边界值法的操作步骤 案例1 案例2 判定表法 为什么使用判定表法 判定表法的四个组成部分 判 ...
- 测试用例及其设计方法
测试用例 测试用例的定义※ 设计一个情况,软件程序在这种情况下,必须能够正常运行并且达到程序所设计的预期结果. 测试用例的模板包括和包含的内容 测试用例模版: 标识符:由测试设计过程说明和测试程序说明 ...
- 3.4 黑盒测试用例的设计方法 之 等价类划分与边界值分析
3.4 黑盒测试用例的设计方法 具体的黑盒测试用例设计方法包括等价类划分法.边界值分析法.场景法.错误推测法.因果图法.判定表驱动法.正交试验设计法.功能图法等. 这些方法是比较实用的,但采用什么方法 ...
- (转)测试用例的设计方法(全)之三 判定表、正交实验
测试用例的设计方法(全)之三 (5)判定表驱动分析方法 一. 方法简介 1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具. 2.判定表的优点 能够将复杂的问题按照各种可能的情况全 ...
- 测试用例的设计方法(全)
测试用例的设计方法(全) 等价类划分方法: 一.方法简介 1.定义 是把所有可能的输入数据,即程序的输入域 ...
- 测试用例的设计方法及案例
测试用例的设计方法 一.软件测试的生命周期(软件测试的流程是什么?) 二.如何描述一个BUG? 三.测试用例的设计方法 3.1等价类 3.2边界值法 3.3因果图法 3.4场景设计法 3.5正交排列法 ...
最新文章
- videoview全屏播放
- 前端学习(2510):文件目录
- crontab 执行时间与系统时间不一致问题解决
- npm install Saving to file: /root/.jenkins/workspace/ems-web/node_modules/chromedriver/2
- HDU2203 亲和串【字符串】
- python爬虫作业帮_【Python爬虫】01作业
- 【语音去噪】基于matlab谱减法语音去噪【含Matlab源码 571期】
- 自助友情链接交换网站php源码,友情链接交换系统
- mysql安装教程【安装版】
- 计算机 网络发现不了电脑,win10网络发现已关闭网络计算机和设备不可见怎么办?...
- pcntl php windows_PHP各版本安装pcntl扩展
- wps文档怎样去除广告
- 360如何清理注册表
- Windows——如何关闭笔记本自带键盘
- 重写equals方法一定要重写hashcode方法吗
- TCP吞吐性能优化的吐槽与拯救
- matlab图注的上标和下标,关于matlab中特殊字符, 上标和下标
- Hbase学习笔记(概念和搭建)
- linux电脑自启动,caddyserver在linux系统下设置开机启动
- H3C交换机的命名规则