08第二部分-黑盒4-因果图法PPT优秀课件

合集下载

黑盒测试技术4-因果图法

黑盒测试技术4-因果图法
❖ 与: 表示若几个原因都出现,结果才出现;若几个
e1 原因中有一个不出现,结果就不出现。 如图,若c1和c2都是1,则ei为1;否则ei为0。 “与” 可有任意个输入。
因果图的约束符号
输入条件的 4 种约束类型:
a
E
b (Exclusive)
❖ E 约束(异/互斥): 表示几个原因不会同时成立; 可能他们都不成立,但最多有一个成立。
定义
用于描述输入之间,输入输出之 用于表达多逻辑条件下执行不
间的约束关系和因果关系
同操作的情况的工具
区别
本质
考虑输入条件之间的联系、各种 考虑输入条件之间的各种组合, 组合,相应产生多个动作。 相应产生多个动作。
当输入条件 用例数量相对少(无效用例) 会产生大量测试用例 过多时 可以覆盖到条件之间的先后关系 不能覆盖条件之间的先后关系
• 根据题意,原因和结果如下:
原因
1:A < B+C 2:B < A+C 3:C < A+B 4:A = B 5:A = C 6:B = C
结果
21:不能构成三角形 22:等边三角形 23:等腰三角形 24:一般三角形
步骤2:画出因果图
原因
结果
1
1:A < B+C
21:不能构成三 角形
2
2:B < A+C 22:等边三角形 3
如图,a和b中至多有一个可能为1,即a和b不 能同时为1。
❖ I 约束(或/包含):
a 表示几个原因中至少有一个必须成立,当然也
I
b 可能都成立。
(In)
c 如图,a、b和c中至少有一个必须是1,即 a、b
和c不能同时为0。

黑盒测试技术之因果图-教学课件

黑盒测试技术之因果图-教学课件
1、对说明进行分析,得到原因和结果: 原因: 1:第一列字符是A; 2:第一列字符是B; 3:第二列字符是一数字。 结果: 21:修改文件; 22:给出信息L; 23点 3、考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束
3.实例
4、根据因果图建立决策表
3.实例
5、生成测试用例
THANKS
第四章 测试设计技术
——黑盒测试技术之因果图
主讲人:丁慧
1.因果图 2.使用因果图和决策表设计测试用例 3.实例
1.因果图
因果图技术:面向功能的动态测试的方法,以图形形式(因果图)来 描述规格说明,并借由因果图,通过一系列中间步骤生成测试用例。
因果图最终生成的就是决策表,提供了一个把规格转化为决策表的系 统化方法,从该图中可以产生测试数据。
1.因果图
1.因果图
2.使用因果图和决策表设计测试用例
使用因果图和决策表设计测试用例步骤如下: 1. 分析需求规格说明找出原因和结果; 2. 画出因果图; 3. 标记约束或限制条件; 4. 把因果图转换为决策表; 5. 生成测试用例;
3.实例
某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列 字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正 确,则给出信息L;如果第二列字符不是数字,则给出信息M。
因果图中原因表示输入条件,结果是对输入执行的一系列计算后得到 的输出。
1.因果图
因果图中基本符号 ➢ 以直线连接左右节点,左节点表示原因 (输入状态ci),右节点 表示结果(输出状态ei) ➢ ci和ei均可取值0或1,0表示状态不出现,1表示状态出现
因果图中三大关系 ➢ 原因和结果的关系 ➢ 原因和原因的关系 ➢ 结果和结果的关系

8.黑盒测试(4)-因果图

8.黑盒测试(4)-因果图

实例
图4 因果图示例
实例
因为C1和C2不可能同时为1,即第一个字符不可能既是A又是B,在因果 图上可对其施加E约束,得到具有约束的因果图,如图5所示。
图5 具有E约束的因果图
实例
(3)将因果图转换成决策表,如表1所示。 (4)设计测试用例。表1中的前两种情况,因为原因1和原因2不可能同时 为1,所以应排除这两种情况。根据此表,可以设计出6个测试用例,如表 2所示。
输入与输出的约束关系
(a)异
(b)或
(c)惟一
(d)要求
(e)强制 图3 约束符号
设计步骤
(1)分析软件规格说明书中的输入输出条件并划分出等价类,将每 个输入输出赋予一个标志符;分析规格说明中的语义,通过这些语义 来找出多个输入因素之间的关系。 (2)找出输入因素与输出结果之间的关系,将对应的输入与输出之 间的关系关联起来,并将其中不可能的组合情况标注成约束或者限制 条件,形成因果图。 (3)由因果图转化成决策表,任何由输入与输出之间关系构成的路 径,形成决策表的一列,也被视为决策表的一条规则。 (4)将决策表的每一列拿中使用4种符号分别表示4种因果关系,如图2所示。 用直线连接左右节点,其中左节点Ci表示输入状态(或称原 因),右节点ei表示输出状态(或称结果)。Ci和ei都可取 值0或1,0表示某状态不出现,1表示某状态出现。
• 图2中各符号的含义如下: 恒等:若C1是1,则e1也是1,否则e1为0。 非:若C1是1,则e1是0,否则e1为1。 或:若C1或C2或C3是1,则e1是1,否则e1为0。 与:若C1和C2都是1,则e1是1,否则e1为0。
设计步骤
从因果图生成的测试用例中包括了所有输入数据的取 TRUE与FALSE的情况,构成的测试用例数目达到最少, 且测试用例数目随输入数据数目的增加而线性地增加。

第2章 黑盒测试因果图

第2章 黑盒测试因果图

M约束:对输出条件的约束,若结果a为1,则 结果b必须为0.
2019/4/17
15
4.因果图法

4.3用因果图生成测试用例的基本步骤 (1) 分析软件规格说明描述中,哪些是 原因 (即输入条件或输入条件的等价 类),哪些是结果 (即输出条件),并给 每个原因和结果赋予一个标识符。 (2) 分析软件规格说明描述中的语义, 找出原因与结果之间,原因与原因之 间对应的是什么关系? 根据这些关系, 画出因果图。
第 2章 黑盒测试用例设计方法
2019/4/17
1
黑盒测试用例设计方法
-----------因果图方法
2019/4/17
2
4.因果图法

4.1概述

等价类划分方法和边界值分析方法着 重考虑输入条件,而不考虑输入条件 的各种组合,也不考虑输入条件之间 的相互制约的关系,但有时一些具体 问题中的输入之间存在着相互依赖的 关系,如:NextDate函数问题。
2019/4/17
3
4.因果图法

如果输入之间有关系,我们在测试时必须 考虑输入条件的各种组合,那么可以考虑 使用一种适合于描述对于多种条件的组合, 相应产生多个动作的形式来设计测试用例, 这就需要利用因果图。
2019/4/17
4
4.因果图法

因果图方法最终生成的就是判定表。 它适合于检查程序输入条件的各种组 合情况。
2019/4/17
30
练习题
(2) 画出因果图。所有原因结点列在左边,所有结 果结点列在右边。
2019/4/17
31
练习题
(3) 由于 2 与 3 ,4 与 5 不能同时发生,分别 加上约束条件E。 (4) 因果图转换成判定表 (5) 设计测试用例

黑盒4-_因果图法-年薪及中国象棋问题ppt课件

黑盒4-_因果图法-年薪及中国象棋问题ppt课件

测试用例 Logo
测试用例1: 输入数据: 年薪制员工,严重过失 : 年薪制员工,过失 预期输出: 扣年终风险金的2%
测试用例3: 输入数据: 非年薪制员工,严重过 失 预期输出: 扣当月薪资的8%
测试用例4: 输入数据: 非年薪制员工,过失 预期输出: 扣当月薪资的4%
E1
1000
E2
0100
E3
0010
E4
0001
Logo
E2
1
00
E3
0
10
E4
0
01
决策表分解
规则 选项
1 2 3
123 4 56 78
111 1 00 00 110 0 11 00 101 0 10 10
Logo
11
100 0 00 00
E1
011 1 11 11
规则
12345678
选项
11 0 0 0 0 1 1 1 1 4 10001000 5 01000100 6 00100010 7 00010001
Logo
规则
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
选项
11 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 5 1 1 1 1 0 0 0 01 1 1 1 0 0 0 0 6 1 1 0 0 1 1 0 01 1 0 0 1 1 0 0 7 1 0 1 0 1 0 1 01 0 1 0 1 0 1 0
Logo
黑盒测试用例设计 ——因果图法
习题1
Logo
某软件的一个模块的需求规格阐明书中描画:
〔1〕年薪制员工:严重过失,扣年终风险金的4%; 过失,扣年终风险金的2%。

黑盒测试用例设计方法二(因果图法、判定表法、场景法)

黑盒测试用例设计方法二(因果图法、判定表法、场景法)

⿊盒测试⽤例设计⽅法⼆(因果图法、判定表法、场景法)测试步骤⼀、因果图法1.1什么是因果图法因果图是⼀种适合于描述对于多种输⼊条件组合的测试⽅法根据输⼊条件的组合、约束关系和输出条件的因果关系,分析输⼊条件的各种组合情况,从⽽设计测试⽤例的⽅法它适合于检查程序输⼊条件涉及的各种组合情况。

1.2因果图步骤第⼀步:根据功能说明书中规定的原因和结果之间的关系画出因果图恒等:原因A成⽴,结果B⼀定成⽴⾮:愿意A成⽴时,结果B⼀定不成⽴或:原因A、B、C三者只要有⼀个成⽴,结果D就⼀定成⽴与:原因A、B、C都成⽴时,结果D才会出现第⼆步:根据功能说明在因果图中加上约束条件其中互斥、包含、唯⼀、要求是对原因的约束,屏蔽是对结果的约束。

它们的含义如下:1、互斥(exclusive):表⽰不同时为1,即a,b,c中⾄多只有⼀个12、包含(include):表⽰⾄少有⼀个1,即a,b,c中不同时为03、唯⼀(only):表⽰a,b,c中有且仅有⼀个14、要求(request):表⽰若a=1,则b必须为1。

即不可能a=1且b=05、屏蔽(mask):表⽰若a=1,则b必须为0(当你收到注册成功的提⽰,就⼀定不会收到数据填写错误的提⽰)1.3因果图使⽤实例例:阅读和分析功能说明书,识别出“原因”和“结果”,并加以编号(1)有⼀个饮料⾃动售货机(处理单价为5⾓钱)的控制处理软件,它的软件规格说明如下若投⼊5⾓钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。

若投⼊1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则⾃动售货机在送出相应饮料的同时退回5⾓钱的硬币。

分析原因和结果画出原因和结果之间的关系(部分关系)按照需求描述原因、结果的约束因果图使⽤中的局限性:当原因和结果很多的时候,它们之间的关系连线就会很多,导致因果图的可读性变差。

因此⽤作局部的⼩功能(原因和结果不是很多的时候)分析。

列出所有的原因和结果的列表,设计初步的测试⽤例步骤C5:这是⼀种bug,不能做测试设计。

第3章(4)黑盒测试方法4-因果图法分解

第3章(4)黑盒测试方法4-因果图法分解
• 将因果图转换成决策表; • 根据决策表中每一列设计测试用例
课堂回顾: Logo
1、以下四个图例分别表示什么关系:
c1
e1
c1 ~ e1
c1
c2
∨ e1
c3
c1 ∧ e1
c2
课堂回顾: Logo
2、以下五种图例又分别表示什么关系??
a
E
I
b
a
R
b
a
a
b
O
b
c
a
M
b
Logo
3、叙述因果图法设计测试用例的步骤
因果图法设计测试用例思想 Logo
• 首先从程序规格说明书的描述中, 找出因(输入条件)和果(输出结果 或者程序状态的改变),
• 然后通过因果图转换为判定表,最 后为判定表中的每一列设计一个测 试用例.
因果图法的定义: Logo
• 是一种利用图解法分析输入的各种 组合情况,从而设计测试用例的方 法,它适合于检查程序输入条件的 各种组合情况。
为0,“与”也可有任意个输入。
Logo
• 在实际问题当中输入状态相互之间还可能 存在某些依赖关系,称为“约束”
a E
b 异
a
I
b
或c
(a)
(
a
R
M
b 要求
b 强制
(d)
(e)
Logo
–E约束(异):a和b中最多有一个可能为1, 即a和b不能同时为1;
a E
b 异
Logo
什么是因果关系?? Logo
• 拿破仑说: • “失一个钉子,坏了一只蹄铁; • 坏了一只蹄铁,折了一匹战马; • 折了一匹战马,伤了一位骑士; • 伤了一位骑士,输了一场战斗;

第章黑盒测试-精品.ppt

第章黑盒测试-精品.ppt
例如,在C语言中对变量标识符的规定为“以字母打头的 ……”。那么所有以字母打头的构成一个有效等价类,而不 在此集合内的构成一个无效等价类。
(4)按限制条件或规则划分
如果规定了输入数据和须遵守的规则或限制条件,则可以 确立一个有效等价类(符合规则)和若干个无效等价类( 从不同角度违反规则)。
(5)细分等价类
2.2.2 等价类划分法的测试运用
1. NextDate 函数包含三个变量:month 、 day 和 year ,函 数的输出为输入日期后一天的日期。 例如,输入为 2019年3 月 7日,则函数的输出为 2019年3月8日 。要求输入变量 month 、 day 和 year 均为整数值,并且满足下列条件: ①1≤month≤12 ②1≤day≤31 ③1812≤year≤2019
(2)按数值划分
如果规格说明规定了一组输入数据,而且程序要对每个输入 值分别进行处理,则可为每一个输入值确立一个有效等价类 ,针对这组值确立一个无效等价类,即所以不允许输入值的 集合。
(3)按数值集合划分
如果输入条件规定了输入值的集合,或者是规定了“必须 如何”的条件,这时可确定一个有效等价类和一个无效等 价类。
第2章 黑盒测试
黑盒测试是一种常用的软件测试方法,它将被测软件看作一 个打不开的黑盒,主要根据功能需求设计测试用例,进行测 试。本章主要介绍几种常用的黑盒测试方法和黑盒测试工具, 并通过实例介绍各种方法的运用。
第2章 ቤተ መጻሕፍቲ ባይዱ盒测试
2.1黑盒测试的基本概念 2.2 等价类划分 2.3边界值分析法 2.4 因果图法 2.5 决策表法 2.6 黑盒测试方法的比较与选择 2.7 黑盒测试工具介绍
2.1黑盒测试的基本概念
黑盒测试是从一种从软件外部对软件实施的测试,也称 功能测试或基于规格说明的测试。

因果分析图法课件

因果分析图法课件

确定分析目标与因素
总结词
明确因果分析的目的和重点,确定需要分析的因素,并对其进行分类和组织。
详细描述
在开始绘制因果分析图之前,需要明确分析的目标和重点,确定需要研究和分 析的因素,并对这些因素进行分类和组织,以便更好地理解和呈现它们之间的 关系。
收集相关数据与信息
总结词
收集与因果分析相关的数据和信息,确保数据的准确性和可 靠性。
产品设计优化案例
总结词
因果分析图法在产品设计优化中,有助 于理清产品特性和性能之间的关系,识 别关键设计因素,提高产品竞争力。
VS
详细描述
设计师可以通过因果分析图法,将产品的 各种特性和性能指标与潜在的影响因素( 如用户需求、技术限制、成本预算等)联 系起来。这有助于设计师明确设计重点, 优化设计方案,提高产品的整体性能和市 场接受度。
对于可能存在异常或错误的数据, 应进行适当的处理或剔除,以提 高数据质量,保证分析结果的可 靠性。
注意因果关系的客观性与科学性
依据科学理论建立因果关系 在构建因果分析图时,应依据科学理论和已有的研究结果 来确定因果关系,避免主观臆断和无根据的推测。
保持客观态度 在分析因果关系时,应保持客观态度,不受个人偏见或利 益关系的影响,确保分析结果的客观性和科学性。
在制作图表时,应注意布局的合理性和美观性,使图表易于阅读和理解。
03
添加必要的图表说明
为了帮助读者更好地理解图表,应添加必要的图表说明,包括图例、单
位、数据来源等。同时,对于重要的信息或细节部分,可以使用不同的
颜色、字体或标记进行突出显示。
THANKS
[ 感谢观看 ]
CHAPTER 03
因果分析图法的分析步骤

黑盒用例设计方法之因果图法

黑盒用例设计方法之因果图法

黑盒用例设计方法之因果图法1.因果图的具体介绍 (2)1.1.为什么么需要因果图 (2)1.2.因果图概念介绍 (2)1.2.1.布尔逻辑运算符 (3)1.2.2.因果图的约束关系表示法 (4)1.3.使用因果图设计测试用例的步骤 (6)1.3.1.分析需求 (6)1.3.2.确定原因和结果 (6)1.3.3.确定逻辑关系 (6)1.3.4.确定约束关系 (6)1.3.5.把因果图转换为决策表 (7)1.3.6.根据原因给出结果 (7)1.3.7.设计测试用例 (7)1.4.举例说明 (7)1.4.1.例子1 (7)1.4.2.例子2 (10)2.使用因果图的好处 (13)总上所述,我认为因果图最大的好处有2点: (13)1.因果图的具体介绍1.1.为什么么需要因果图在黑盒测试中,等价类划分或边界值分析法只考虑了不同的输入和不同的输出之间的关系。

但是如果是各个输入条件之间有很复杂的组合,这二种设计方法都很难用一个系统的方法进行描述,设计测试用例只能依靠测试人员主观的猜测或者分析,具有很大的盲目性。

让我们先来看一个简单的例子。

假设某个软件需求文档中有这样的说明:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改。

但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。

先用等价类来分析,第一列会有三个输入:A、B、非(A B)的字符。

第二列字符有二个输入:数字、非数字(为了简便起见,有关数字再细化的问题不做讨论)。

这是一个根据理论进行分析的过程。

但是做完了这一步,并不能得出输出。

也就是说如何分析第一列和第二列的关系,没有明确的理论指导。

实际操作过程中,各个测试人员可能会设计出不同的测试用例。

这个例子还仅仅是一个2个输入条件之间有关系,如果到更复杂的应用中,可能会更多。

如果没有一种方法指导我们的思想,测试用例就会很不全面。

而因果图正好弥补了上述缺点。

我们先来看一下什么叫因果图。

软件测试技术第4章黑盒测试第4节因果图

软件测试技术第4章黑盒测试第4节因果图

用场景分析法设计测试用例 ― 举例
第三步:对每一个场景生成测试用例
测试用例ID 1 2 3 4 5 场景/条件 场景1:成功购物 场景2:账户不存在 场景3:账户密码错误 场景4:账户余额不足 场景5:账户没钱 账户 V I V V V 密码 V n/a I V V 账户余额 V n/a n/a I I 预期结果 成功购物 提示账号不存在 提示账号密码错误, 返回基本流步骤3 提示用户账户余额 不足,请充值 提示用户账户没钱, 请充值
2.因果图的基本符号
c1
c1=1 或 c2=1 或 c3=1 e1=1
e1=0

c2 c3 c1
e1
否则

c2
e1
c1=1且c2=1 否则
e1=1 e1=0
输入条件的约束
输入条件的约束(续)
3.利用因果图设计测试用例

1.分析程序规格说明的描述中,哪些是原 因,哪些是结果
原因常常是输入条件或是输入条件的等价类;
V(有效):用于表明这个条件必须是有效的才可执行基本流; I(无效):用于表明这种条件下将激活所需备选流; n/a(不适用):表明这个条件不使用测试用例
用场景分析法设计测试用例 ― 举例
第四步:设计测试数据
测试用例ID 1 场景/条件 场景1:成功购物 场景2:账户不存 在 账户 密码 账户余额 800 预期结果 成功购物
用场景分析法设计测试用例 ― 举例 用户进入一个在线购物网站进行购 物,选购物品后,进行在线购买,这是 需要使用账号登录,登录成功后,进行 付钱交易,交易成功后,生成订购单, 完成整个购物过程。
用场景分析法设计测试用例 ― 举例
第一步:确定基本流和备选流
基本流:登录在线网站—>选择物品—>登录账号 —>付款—>生成订单; 备选流1:账户不存在 备选流2:账户密码错误;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

a
I
b
或c
14
O约束(唯一):a和b必须有一个且仅 有一个为1;
a O
b 唯一
15
R约束(要求):a是1时,b必须是1;
a R
b 要求
16
M约束(强制):若结果a是1,则结果b 强制为0。
a M
b 强制
17
对于输入条件的约束有4种:
E约束(异):a和b中最多有一个可能为1,即a和b不 能同时为1;
V
11
C2
C3
E
C4
V
20
步骤:
1. 分析程序的规格说明,列出原因和结果; 2. 找出原因与结果之间的因果关系、原因
与原因之间的约束关系,画出因果图。 3. 将因果图转换成决策表; 4. 根据3中的决策表,设计测试用例的输入
数据和预期输出。
21
解法如下:
(1)在明确了上述要求后,可以明确地 将原因和结果分开。
原因:c1-第一个字符是“#” c2-第一个字符是“*” c3-第二个字符是一个数字
测试 用例
3 45 1 10 0 01 1 01 1 11



#3 #B *7
67 8 00 0 10 0 01 0 10 0
√√


*M C2 CM
25
(4)设计测试用例
最左边两列,原因c1和c2同时为1不可能,排除掉, 根据表可设计出6个测试用例。
Test1:输入数据-#3 Test2:输入数据-#B Test3:输入数据-*7 Test4:输入数据-*M Test5:输入数据-C2 Test6:输入数据-CM
由于语法或环境限制,有些原因与原因之间或 与结果之间的组合情况不能出现,用记号标明 约束或限制条件;
将因果图转换成决策表; 根据决策表中每一列设计测试用例
19
因果图法举例
程序的规格说明要求:输入的第一个字符 必须是“#”或“*”,第二个字符必须是 一个数字,在此情况下进行文件的修改; 如果第一个字符不是“#”或“*”,则给 出信息N;如果第二个字符不是数字,则 给出信息M。
28
(1)分析原因及结果
原因
c1:投入1元5角硬币;
c2:投入2元硬币;
c3:按“可乐”按钮;
c4:按“雪碧”按钮;
c5:按“红茶”按钮已按钮
结果
a1:退还5角硬币;
a2:送出“可乐”饮料;
a3:送出“雪碧”饮料;
a4:送出“红茶”饮料; 29
(2)画出因果图
C1
E
c1
V
c2
e1
c3
9
与:若c1和c2都是1,则e1为1, 否则e1为0,“与”也可有任意 个输入。
c1 e1
c2
10
V
恒等:若c1是1,则e1也为1,否则e1 为0;
非:若c1是1,则e1为0,否则e1为1; 或:若c1或c2或c3是1,则e1是1,
否则e1为0,“或”可有任意个输入; 与:若c1和c2都是1,则e1为1,否则
预期输出--修改文件 预期输出--给出信息M 预期输出--修改文件 预期输出--给出信息M 预期输出--给出信息N 预期输出--给出信息M和N
26
使用因果图法的优点:
(1)考虑到了输入情况的各种组合以及各个 输入情况之间的相互制约关系。
(2)能够帮助测试人员按照一定的步骤,高 效率的开发测试用例。
黑盒测试用例设计 ——因果图法
1
因果图法产生的背景
等价类划分法和边界值分析方法 都是着重考虑输入条件,但没有考虑 输入条件的各种组合、输入条件之间 的相互制约关系。这样虽然各种输入 条件可能出错的情况已经测试到了, 但多个输入条件组合起来可能出错的 情况却被忽视了。
2
因果图法设计测试用例思想
首先从程序规格说明书的描述中, 找出因(输入条件)和果(输出结 果或者程序状态的改变),
结果:a1-给出信息N a2-修改文件 a3-给出信息M
22
(2)因果图
10为导出结果的中间原因
c1
a1
V 10
~
V
c2
a2
c3
~
a3
因果图表示
23
带有E约束的因果图
c1
a1
E
V 10
~
V
c2
a2
c3
~
a3
具有E约束的因果图表示
24
将因果图转化为判定表
12 C1 1 1 C2 1 1 C3 1 0 10 a1 a2 a3 不可能 √ √
(3)因果图法是将自然语言规格说明转化成 形式语言规格说明的一种严格的方法,可以 指出规格说明存在的不完整性和二义性。
27
案例分析1
有一个处理单价为1元5角的盒装饮料的 自动售货机软件。若投入1元5角硬币, 按下“可乐”,“雪碧”或“红茶”按钮, 相应的饮料就送出来。若投入的是两元硬 币,在送出饮料的同时退还5角硬币。
5
主要的原因与结果之间的关系
c1
e1
(a)恒等
c1 ~ e1 (b)非
c1
V
c2
e1
c3
(c)或
V
c1 e1
c2
(d)与
6
恒等:若c1是1,则e1也为1, 否则e1为0;
c1
e1
7
非:若c1是1,则e1为0,否 则e1为1;
c1 ~ e1
8
或:若c1或c2或c3是1,则e1 是1,否则e1为0,“或”可有任 意个输入;
然后通过因果图转换为判定表,最 后为判定表中的每一列设计一个 测试用例.
3
因果图法的定义: 是一种利用图解法分析输入的各
种组合情况,从而设计测试用例 的方法,它适合于检查程序输入 条件的各种组合情况。
4
因果图中出现的基本符号
原因
结果
通常在因果图中用Ci表示原因,用Ei 表示结果,各结点表示状态,可取值 “0”或“1”。“0”表示某状态不出现, “1”表示某状态出现。
e1为0,“与”也可有任意个输入。
11
在实际问题当中输入状态相互之间还可能 存在某些依赖关系,称为“约束”
a E
b 异
a
I
b
或c
a O
b 唯一
a
a
R
M
b 要求
b 强制
(a)
(b)
(c)
(d)
(e)
12
E约束(异):a和b中最多有一个可能 为1,即a和b不能同时为1;
a E
b 异
13
I约束(或):a、b、c中至少有一个必 须是1,即a、b、c不能同时为0;
I约束(或):a、b、c中至少有一个必须是1,即a、b c不能同时为0;
O约束(唯一):a和b必须有一个且仅有一个为1; R约束(要求):a是1时,b必须是1;
对于输出条件的约束只有M约束
M约束(强制):若结果a是1,则结果b强制为0。
18
因果图法设计测试用例步骤:
分析程序规格说明书描述的语义内容,找出 “原因”和“结果”,将其表示成连接各个原 因与各个结果的“因果图”。
相关文档
最新文档