编写测试用例方法----因果图判定表
因果图:
一、应用场合
在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法。
二、因果图核心
1、因----原因,输入条件
2、果----结果,输出结果
使用图形的方式,分析软件输入和输出的对应关系。
三、图形符号
1、基本图形
表示输入和输出的对应关系
(1)恒等(-)Ⓐ(输入、因) Ⓑ(输出、果)
若a=1,则b=1
若a=0,则b=0
(2)非(~)Ⓐ(输入、因) Ⓑ(输出、果)
若a=1,则b=0
若a=0,则b=1
(3)或(V)
若a=1,或b=1,或c=1,则d=1
若a=b=c=0,则d=0
(4)与(^)
若a=b=c=1,则d=1
若a=0或b=0或c=0,则d=0
2、约束(限制条件)图形
要不然单独限制输入,要不然单独限制输出
(1)互斥(E)
a、b、c不同时为1,则a,b,c中至多只有一个1
(2)包含(I)
a、b、c至少有一个1,则a,b,c中不能同时为0
(3)唯一(O)
a、b、c中必须有一个成立,且仅有一个成立(有且只有一个1)
说明:
唯一(O)的情况是有一个默认值;而互斥(E)没有默认值
(4)要求(R)
若a=1,则b必须为1。即不可能a=1且b=0
(5)屏蔽(M)
若a=1,则b必须为0;而当a为0时,b的值不定
四、使用因果图法分析程序
例子:
交通一卡通自动充值软件系统需求
系统只接收50元或100元纸币,一次充值只能使用一张纸币,一次充值金额只能为50元或100元。
若输入50元纸币,并选择充值50元,完成充值后退卡,提示充值成功;
若输入50元纸币,并选择充值100元,提示输入金额不足,并退回50元;
若输入100元纸币,并选择充值50元,完成充值后退卡,提示充值成功,找零50元;
若输入100元纸币,并选择充值100元,完成充值后退卡,提示充值成功;
若输入纸币后在规定时间内不选择充值按钮,退回输入的纸币,并提示错误;
若选择充值按钮后不输入纸币,提示错误
1、找出所有的原因(输入),编号
(1)投币50元
(2)投币100元
(3)充值50元
(4)充值100元
2、找出所有的结果(输出),编号
A、充值成功并退卡
B、提示充值成功
C、找零
D、提示错误
步骤1、2就是初步分析需求。
3、在步骤1的基础上,找到输入的限制关系和组合关系
(1)、限制关系(哪些输入不能组合)
1)输入(1)和(2)不能(互斥)
2)输入(3)和(4)不能(互斥)
画出限制关系因果图
因
(2)、组合关系(决定测试用例的数量)
1)输入(1)和(3)组合
2)输入(1)和(4)组合
3)输入(2)和(3)组合
4)输入(2)和(4)组合
5)输入(1)单独
6)输入(2)单独
7)输入(3)单独
8)输入(4)单独
4、在步骤2的基础上,找到输出的限制关系和组合关系
(1)限制关系
1)输出A和D不能(互斥)
2)输出B和D不能(互斥)
画出限制关系因果图
(2)组合关系
1)输出A和B必须组合
2)输出A、B、C组合
3)输出C和D组合
4)输出D单独
步骤3、4是深入分析需求的过程
5、找到输入组合和输出组合的对应关系(什么样的输入组合会产生什么样的输出组合)-----依据步骤3(2)和4(2)
情况1:
输入(1)和(3)组合
会产生:
输出A和B的组合
画出因果图:
==========================================================
情况2:
输入(1)和(4)组合
会产生:
输出C和D的组合
画出因果图:
==========================================================
情况3:
输入(2)和(3)组合
会产生:
输出A和B和C的组合
画出因果图:
==========================================================
情况4
输入(2)和(4)组合
会产生:
输出A和B的组合
画出因果图:
==========================================================
情况5:
输入(1)单独
会产生:
输出C和D的组合
画出因果图:
==========================================================
情况6:
输入(2)单独
会产生:
输出C和D的组合
画出因果图:
==========================================================
情况7:
输入(3)单独
会产生:
输出D
画出因果图:
==========================================================
情况8:
输入(4)单独
会产生:
输出D
画出因果图:
6、根据因果图,画出判定表
7、根据判定表编写用例
把判定表的一列转换成一条用例
五、因果图法的局限性
每个控件的条件(或取值)最好为2个或3个,比如:按钮按下或不按下;复选框选择还是不选择;单选按钮选还是不选;有三个选项的下拉列表。
编写测试用例方法----因果图判定表相关推荐
- 测试用例之因果图/判定表
测试用例之因果图/判定表 测试用例 因果图和判定表(网上搜集的案例,不喜勿喷) 一. 适应场合: 在一个界面中有多个控件,如果控件之间存在组合关系或者限制关系,不同的控件组合会产生不同的输出结果, ...
- 测试用例---常用设计方法,等价类,边界值,因果图判定表,正交表,场景法,大纲法
等价类划分 1.概念:等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出那些是有效的,那些是无效的,每个区域选取典型数据为测试用例.每个区域中的输入时等价的 ...
- 测试用例设计方法之判定表法
概念: 等价类,边界值分析法一般是对单一输入进行测试用例分析的方法. 判定表是对其的一种补充,对于多种输入之间存在的组合关系并且对应执行不同动作,进行测试用例的分析的方法. 应用场景: 当一个界面中有 ...
- 测试用例设计之判定表
测试用例设计之判定表 在一个程序中,如果输入输出比较多,输入之间和输出之间相互制约的条件比较多,在这种情况下应用决策表很合适,它可以很清楚地表达它们之间的各种复杂关系. 决策表法简述: 决策表是把作为 ...
- 功能测试笔记PART2-测试用例设计方法与实战【等价类划分、边界值、因果图判定表、正交实验法】
如何设计软件设计[测试用例设计] 一.测试设计与测试用例 测试设计:将概括的测试目标转化为具体的测试条件和测试用例的一系列活动. 测试分析和设计的主要任务: 评审测试依据 (需求.系统架构.设计.接口 ...
- 测试用例设计方法_判定表法(游戏向)
一.判定表法简介 1.1 什么是判定表法? 判定表法又称决策表,判定表法(Decision table)同因果图法一般也是一种表达逻辑判断的工具.判定表是分析和表达多逻辑条件下执行不同操作的 ...
- 测试用例设计方法之判定表详解!!
理论部分 判定表是分析和表达多种输入条件下系统执行不同动作的工具,它可以把复杂的逻辑关系和多种 条件组合的情况表达得既具体又明确. 条件桩(Condition Stub) 动作桩(Action Stu ...
- 常用测试用例设计方法之判定表法详解
理论部分 判定表是分析和表达多种输入条件下系统执行不同动作的工具,它可以把复杂的逻辑关系和多种 条件组合的情况表达得既具体又明确. 条件桩(Condition Stub) 动作桩(Action Stu ...
- 测试工程方法:判定表驱动法
判定表是分析和表达多逻辑条件下执行不同操作的工具.它能够将复杂的问题按照各种可能的情况全部列举出来.因此,利用判定表能够设计出完整的测试用例集合.在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条 ...
最新文章
- MPB:上海交大肖湘组分享基于基因芯片的海洋微生物转录组学分析技术
- 开机动画适配方案_2020 年 4 月前 App 启动画面、屏幕调整需按要求适配,否则存拒审风险!...
- Bzoj5093: 图的价值
- 判断字符串是否是空格
- 管理后台--1.创建分类
- 网页标题设计原则与一般规律
- java调度问题的贪心算法_java代码,多机调度问题,怎么解释
- freeswitch 录音录像模块和内核
- 他用代码卖手机,卖出年流水上亿
- matlab悬臂梁有限元分析
- 数据分析基础-假设检验原理详解
- 11210怎么等于24_所有能算24点的四个数,(4个数只能是1——10之间的数)我举个例:1,1,1,8.1,1,2,6.………………所有能算...
- Windows CE 桌面UI修改
- Onload ‐ TCP
- 解决 vmware 虚拟机安装后没有虚拟网卡问题
- 自己开发基于Web的打印控件,真正免费不是共享
- ios 渐变透明背景_利用PS绘制唯美梦幻多边形背景图
- 英语口语练习十三之It's up to... (由……来决定)用法
- 计算机系vi论文,vi设计毕业论文-vi设计论文-计算机论文.docx
- sa结构组网方式_5G网络包含NSA和SA两种组网方式
热门文章
- Android Transtion
- visual studio 2019安装教程(详细的很)
- 599.两个列表的最下索引总和
- 谷歌浏览器报错ERR_MANDATORY_PROXY_CONFIGURATION_FAILED 解决办法
- ES设置自定义分词器
- android虚拟按键 判断,如何检测虚拟键盘事件中的Android用Delphi
- MATLAB导入EXCEL数据D=xlsread()的一种情况
- 使用case when,union all实现sql行转列、列转行
- ZYNQ裸机实现 USB MASS STORAGE (usb+sd卡 实现U盘功能)
- 互联网人才结构与流动报告2021