第07章功能测试(03因果图法)讲义

合集下载

因果图法

因果图法

测试用例设计—因果图法1.引言等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。

考虑输入条件之间的相互组合,可能会产生一些新的情况。

但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。

这就需要利用因果图(逻辑模型)。

因果图(Cause-EffectGraphing)提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。

其中原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出。

因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。

2.因果图介绍图例说明1、4种符号分别表示了规格说明中向4种因果关系。

如图2-1所示。

图2-1 因果图关系2、因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

3、ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

ci 和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

因果图概念1、关系(图2-1 因果图关系)①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

2、约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如,某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

如图2-2所示。

图2-2因果图约束A.输入条件的约束有以下4类:① E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

② I约束(或):a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。

测试用例设计-因果图方法

测试用例设计-因果图方法

测试用例设计-因果图方法一.方法简介定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。

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

这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。

如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。

因果图介绍4种符号分别表示了规格说明中向4种因果关系。

因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

Ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

Ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

因果图概念关系①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如, 某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

输入条件的约束有以下4类:① E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

② I约束(或):a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。

③ O约束(唯一);a和b必须有一个,且仅有1个为1。

④R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。

输出条件约束类型输出条件的约束只有M约束(强制):若结果a是1,则结果b强制为0。

7因果图法详解

7因果图法详解

找出因(输入条件)和果(输出结 果或者程序状态的改变), 然后通过因果图转换为判定表,最 后为判定表中的每一列设计一个 测试用例.
因果图法的定义:
是一种利用图解法分析输入的各
种组合情况,从而设计测试用例 的方法,它适合于检查程序输入 条件的各种组合情况。
因果图中出现的基本符号
原因
结果
通常在因果图中用Ci表示原因,用Ei 表示结果,各结点表示状态,可取值 “0”或“1”。“0”表示某状态不出 现,“1”表示某状态出现。
(b)
(c)

E约束(异):a和b中最多有一个可能 为1,即a和b不能同时为1;
a E

b

I约束(或):a、b、c中至少有一个必 须是1,即a、b、c不能同时为0;
a I 或 b c

O约束(唯一):a和b必须有一个且仅 有一个为1;
a O 唯一 b

R约束(要求):a是1时,b必须是1;
a R b 要求

M约束(强制):若结果a是1,则结果b 强制为0。
a M b 强制

对于输入条件的约束有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;
因果图法举例

程序的规格说明要求:输入的第一个字符 必须是“#”或“*”,第二个字符必须是 一个数字,在此情况下进行文件的修改; 如果第一个字符不是“#”或“*”,则给 出信息N;如果第二个字符不是数字,则 给出信息M。
步骤:

因果图法——精选推荐

因果图法——精选推荐

因果图法因果图法判断表法场景法因果图1.)因果图法是⼀种适合于描述对于多种输⼊条件组合的测试⽅法2.)根据输⼊条件的租合,约束关系和输出条件的因果关系,分析输⼊条件的格尔宗族和情况,从⽽设计测试⽤例的⽅法;3.)它适合于检查程序输⼊条件涉及的各种组合情况;1.原因和结果的关系2.恒等,原因A成⽴,结果B⼀定,结果成⽴3.⾮。

原因A成⽴时结果B⼀定不成⽴4.或。

原因A,B,C三者只有⼀个成⽴,结果D才会出现。

第⼆步:其中互斥,包含,唯⼀,要求是对原因的约束,屏蔽是对结果的约束,它们的含义如下:互斥:表⽰不同时为1,即a,b,c中⾄少有⼀个1包含:表⽰⾄少有⼀个1,即a,b,c中不同时为0唯⼀:表⽰a,b,c中有且只有⼀个1要求:表⽰若a=1,则b必须为1,既不可能a=1且b=0屏蔽:表⽰若a=1,则b必须为0原因之间的约束:1)互斥:假如原因成⽴⽤1表⽰,不成⽴⽤0表⽰,也即是所A+B+C<=12)包含,也就是0=>A+B+C>=13)唯⼀:A+B+C==14)要求:(only)A+B+C==15)屏蔽:6)因果图实例阅读和分析功能说明书,识别出“原因”和“结果”,并加以编号案例:有⼀个饮料⾃动售货机(处理单价为5⾓钱)的控制处理软件,他的软件规格说明如下:1)若投⼊5⾓钱,按下“橙汁”或者“啤酒”的按钮,则相应的饮料就送出来;2)若投⼊1元钱的银币,同样也是按“橙汁”或者“啤酒”的按钮,则⾃动售货机在送出相应饮料的同时退回5⾓钱的银币;如果图使⽤中的局限性:当原因1和恶结果多的时候,它们之间的关系连线会很多,导致因果图可读性差,因此⽤作局部的⼩功能(原因和结果不是很多的时候)分析;列出所有的的原因和结果的列表,设计初步的测试⽤例步骤;操作/序列Case1Case2Case3Case4Case5投币投五⾓10000投⼀元01110按钮选橙汁10101选啤酒01010结果出橙汁10011出啤酒01100找零5⾓00110提⽰项提⽰投币提⽰选择60s⾃动退币Case5是⼀种bug,不能做测试设计;因果图的优势在于,能够发现设计中的不⾜;经过分析发现:1)只选择饮料没有投币的时候,软件没有任何结果;2)只投币没有选择饮料时,软件也没有任何的结果;3)不能把软件的缺陷设计成测试⽤例;判定表法:是分析和表达逻辑条件下执⾏不同的情况的⼯具。

因果图法

因果图法

测试用例设计—因果图法1.引言等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。

考虑输入条件之间的相互组合,可能会产生一些新的情况。

但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。

这就需要利用因果图(逻辑模型)。

因果图(Cause-EffectGraphing)提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。

其中原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出。

因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。

2.因果图介绍2.1图例说明1、4种符号分别表示了规格说明中向4种因果关系。

如图2-1所示。

图2-1 因果图关系2、因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

3、ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

2.2因果图概念1、关系(图2-1 因果图关系)①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

2、约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如,某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

如图2-2所示。

图2-2因果图约束A.输入条件的约束有以下4类:①E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

②I约束(或):a、b和c中至少有一个必须是1,即a、b 和c不能同时为0。

因果图讲义

因果图讲义
重庆港湘龙机械(集团)有限公司
因果图讲义
王 洪
2012年6月18日
产品质量是企业生存的命脉,创新是企业发展的源泉
重庆港湘龙机械(集团)有限公司
பைடு நூலகம்主要内容
一、因果图理解 二、应用因果图的步骤 三、因果图的用法 四、逻辑法因果图绘制 五、发散整理型因果图绘制 六、因果图的注意事项 七、实例
产品质量是企业生存的命脉,创新是企业发展的源泉
产品质量是企业生存的命脉,创新是企业发展的源泉
重庆港湘龙机械(集团)有限公司
一、因果图示例
绘制因果图不是一件轻而易举的工作,可以说 质量是否顺利解决,绘制因果图是关键。
机 器
人 员 中要因 中要因
中要因 材 料 小要因 小要因
中要因
方 法
产品质量是企业生存的命脉,创新是企业发展的源泉
重庆港湘龙机械(集团)有限公司
产品质量是企业生存的命脉,创新是企业发展的源泉
重庆港湘龙机械(集团)有限公司
四、因果图的注意事项
一) 绘制因果图注意事项
3、有多少质量特性,就要绘制多少张因果图。 比如,同一批产品的长度和重量都存在问题,必须用两张 因果图分别分析长度波动的原因和重量波动的原因。若许多因 素只用一张因果图来分析,势必使因果图大而复杂,无法管理 ,问题解决起来也很困难,无法对症下药。 4、验证。 如果分析出的原因不能采取措施,说明问题还没有得到解 决。想要改进有效果,原因必须细分,直至能采取措施为止。
产品质量是企业生存的命脉,创新是企业发展的源泉
重庆港湘龙机械(集团)有限公司
四、逻辑法因果图绘制思路
当利用逻辑推理法进行绘制时,最好的方法是看质量特性有没有波 动,如果数据表时存在波动,就需想想为什么会存在波动。 当画不合格的因果图时,可能会从数据中发现每周内不同的日期里, 这种不合格发生的次数有所不同,如果这种不合格在星期一发生的次数 比其他日期次数多,就可以换个角度考虑,“为什么会产生不合格” ? “为什么这种不合格在星期一比其他日期次数多” ?这样就可以找出星 期一与其他日期不同的原因,最终发现产生不合格的原因。 用这种思考方法,确定结果和第一层次原因(主骨)、大骨、中骨、 小骨之间的关系,构成逻辑上的因果关系。 因果分析图完成以后,下一步就是要评价各因素的重要程度。因果 图中所有的因素与结果不一定紧密相关,将对结果有显著影响的因素做 出标记。 最后,在因果图是标明有关资料,如产品、工序或小组的名称,参 加人员名单,日期等。

因果图实例讲解

1.引言等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。

考虑输入条件之间的相互组合,可能会产生一些新的情况。

但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。

这就需要利用因果图(逻辑模型)。

因果图(Cause-EffectGraphing)提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。

其中原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出。

因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。

2.因果图介绍2.1图例说明1、4种符号分别表示了规格说明中向4种因果关系。

如图2-1所示。

图2-1 因果图关系2、因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

3、ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

2.2因果图概念1、关系(图2-1 因果图关系)①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

2、约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如,某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

如图2-2所示。

图2-2因果图约束A.输入条件的约束有以下4类:①E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

②I约束(或):a、b和c中至少有一个必须是1,即a、b 和c不能同时为0。

因果图法

测试用例设计—因果图法1.引言等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。

考虑输入条件之间的相互组合,可能会产生一些新的情况。

但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。

这就需要利用因果图(逻辑模型)。

因果图(Cause-EffectGraphing)提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。

其中原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出。

因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。

2.因果图介绍2.1图例说明1、4种符号分别表示了规格说明中向4种因果关系。

如图2-1所示。

图2-1 因果图关系2、因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

3、ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

2.2因果图概念1、关系(图2-1 因果图关系)①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

2、约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如,某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

如图2-2所示。

图2-2因果图约束A.输入条件的约束有以下4类:①E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

②I约束(或):a、b和c中至少有一个必须是1,即a、b 和c不能同时为0。

因果图实例讲解

1.引言等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。

考虑输入条件之间的相互组合,可能会产生一些新的情况。

但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。

这就需要利用因果图(逻辑模型)。

因果图(Cause-EffectGraphing)提供了一个把规格转化为判定表的系统化方法,从该图中可以产生测试数据。

其中原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出。

因果图方法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。

2.因果图介绍2.1图例说明1、4种符号分别表示了规格说明中向4种因果关系。

如图2-1所示。

图2-1 因果图关系2、因果图中使用了简单的逻辑符号,以直线联接左右结点。

左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

3、ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。

ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

2.2因果图概念1、关系(图2-1 因果图关系)①恒等:若ci是1,则ei也是1;否则ei为0。

②非:若ci是1,则ei是0;否则ei是1。

③或:若c1或c2或c3是1,则ei是1;否则ei为0。

“或”可有任意个输入。

④与:若c1和c2都是1,则ei为1;否则ei为0。

“与”也可有任意个输入。

2、约束输入状态相互之间还可能存在某些依赖关系,称为约束。

例如,某些输入条件本身不可能同时出现。

输出状态之间也往往存在约束。

在因果图中,用特定的符号标明这些约束。

如图2-2所示。

图2-2因果图约束A.输入条件的约束有以下4类:①E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

②I约束(或):a、b和c中至少有一个必须是1,即a、b 和c不能同时为0。

5、因果图法

功能测试技术因果图法-因果图法东软IT人才实训中心3 Sept. 2008© Neusoft Confidential1主要内容•因果图法的概念•因果关系•约束•因果图法设计测试用例步骤2因果图法•等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。

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

•因果图法考虑了输入情况的各种组合及输入情况之间的相互制约关系3因果图中出现的本符号因果图中出现的基本符号原因结果通常在因果图中用Ci表示原因,用Ei表示结果,各结点表示状态,可取值“0”或“1”。

“0”表示某状态不出现,“1”表示某状态出现。

4因果关系c1c1e1c1e1~c2e1Ve1c1Vc3c2(a)恒等(b)非(c)或(d)与等也恒等:若C1为1,则e1也为1非:若C1为1,则e1为0或则或:若c1或c2或c3为1,则e1为1与:若c1和c2都为1,则e1为15约束•实际问题当中,输入状态相互之间可能存在某些依赖关系,称为“约束”•约束类别:–E (Exclusive or )、I (In )、O (Only )、R (Request )•在因果图中,用特定的符号表明这些约束aa aaEIbObRb异a 最多有一c或b唯一要求至少有个和b 最多有个为1,即a 和b 不能同时为1a 是1时,b 必须为1a 、b 、c 至少有一个为1,即不能同时为0a 、b 必须且仅有一个为16因果图法设计测试用例步骤根据程序规格说明书描述的语义内容分析并确定“原因”和“结•根据程序规格说明书描述的语义内容,分析并确定原因和结果”,找出原因与原因之间、原因与结果之间的对应关系,将其表示成连接各个原因与各个结果的因果图。

成连接各个原因与各个结果的“因果图”•由于语法或环境限制,有些原因与原因之间、原因与结果之间的组合情况是不可能出现的,在因果图上用记号标明约束或限制条件;情况是不可能出现的在因果图上用记号标明约束或限制条件•将因果图转换成判定表;•根据判定表中每一列设计测试用例7因果图法案例•程序的规格说明要求:输入的第一个字符必须是“#”或“*”,第二个字符必须是一个数字,在此情况下进行文件的修改;果第个字符是#或*则给出信N;如果第一个字符不是“”或“”,则给出信息如果第二个字符不是数字,则给出信息M。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

输入条件 12345 组合
期望输出
11010
23,24
11001
23,25
11000
..
10110
24
10101
25
10100
..
10010
..
10001
..
01010
21,22
01001
21,22
01000
21
00110
21,24
00101
21,25
00100
21
00010
21
厦门理工学院 计0算00机0信1息工程学院软件工程系 崔建2峰1
E约束(异): a,b最多有一个可能为1,不能同时为1.
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
6
约束关系说明
I约束(或): a,b,c中至少有一个必须为1,不能同时为0.
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
7
约束关系说明
O约束(惟一): a和b必须有一个且仅有一个为1
10
因果图法设计步骤
1. 分析软件规格说明书中的输入输出条件并划分出等价类,将每个输入输出赋予一 个标志符;分析规格说明中的语义,通过这些语义来找出多个输入因素之间的关 系。
2. 找出输入因素与输出结果之间的关联,将对应的输入与输出之间的关系关联起来 ,并将其中不可能的组合情况标注成约束或者限制条件,形成因果图。
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
23
自动售货机问题
C1:售货机有零钱 C2:投入1元硬币 C3:投入5角硬币 C4:压下橙汁按钮 C5:压下啤酒按钮
E1:售货机“零钱找完”红灯亮 E2:退还1元硬币 E3:退还5角硬币 E4:送出橙汁饮料 E5:送出啤酒饮料
根据因果图, 就可以转化为 判定表。这里 根据条C2 与 C3、C4与C5 的E约束(互 斥),可以减
26
使用因果图法的优点
考虑了多个输入之间的相互组合、相互制约关 系;
能够帮助我们按一定步骤,高效率地选择测试 用例,同时还能为我们指出,程序规格说明描 述中存在着什么问题
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
27
谢 谢!
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
少组合
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
24
自动售货机问题
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
25
编号
Test1 Test2 Test3 Test4 Test5 Test6 Test7 Test8 Test9 Test10 Test11 Test12 Test13 Test14 Test15 Test16
出之间的逻辑关系,有利于设计全面的测试用例。
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
3
输入与输出关系
输入与输出之间的关系
• Ci:表示原因(Cause, 输入状态); • Ei:表示结果(Effect, 输出状态)。
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
4
输入或输出之间的约束
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
19
自动售货机问题
橙汁
啤酒
5角
投币口
1元
零钱找完
退币口
取货
出货口
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
20
自动售货机问题
(1) 分析这一段说明,列出原因和结果
原因:
1. 售货机有零钱找 2. 投入1元硬币 3. 投入5角硬币 4. 按下橙汁按钮 5. 按下啤酒按钮
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
18
自动售货机问题
例如,有一个处理单价为5角钱的饮料的自 动售货机软件测试用例的设计。其规格说明 如下:
若投入5角钱或1元钱的硬币,按下〖橙汁〗 或〖啤酒〗的按钮,则相应的饮料就送出来 。若售货机没有零钱找,则一个显示〖零钱 找完〗的红灯亮,这时在投入1元硬币并按 下按钮后,饮料不送出来而且1元硬币也退 出来;若有零钱找,则显示〖零钱找完〗的 红灯灭,在送出饮料的同时退还5角硬币。 ”
实际问题中,输入状态之间或输出结果之间可能存在某些依 赖关系,这种依赖关系被称为约束.
在因果图中使用特定的符号来表示这些约束关系
E约束:互斥,排他 I约束:包含,或 O约束:唯一 R约束:要求 M约束:屏蔽
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
5
约束关系说明
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
21
自动售货机问题
结果:
21. 售货机〖零钱找完〗红灯亮 22. 退还1元硬币 23. 退还5角硬币 24. 送出橙汁饮料 25. 送出啤酒饮料
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
22
自动售货机问题
建立中间结点,表示处理中间状态:
11. 投入1元硬币且按下饮料按钮 12. 按下〖橙汁〗或〖啤酒〗的按钮 13. 应当找5角零钱并且售货机有零钱找 14. 钱已付清
第七章 功能测试 ——因果图法
崔建峰 jfcui@
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
因果图法
等价类划分方法和边界值分析方法的不足
着重考虑输入条件,而不考虑输入条件的各种组 合,也不考虑输入条件之间的相互制约的关系,
但有时一些具体问题中的输入之间存在着相互依赖的关系, 如NextDate函数问题。
C2 1 1 0 0 1 1 0 0
C3 1 0 1 0 1 0 1 0
10
1 11 10 0
E1


E2
√√
E3



不可能 √ √
测试 用例
A3 AM B3 BM C2 CM A5 A& B5 B* X6 D*
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
17
字符问题
设计测试用例
测试用例1: 输入数据:A3 预期输出:修改文件 测试用例2: 输入数据:AM 预期输出:给出信息M 测试用例3: 输入数据:B3 预期输出:修改文件 测试用例4: 输入数据:B* 预期输出:给出信息M 测试用例5: 输入数据:C2 预期输出:给出信息L 测试用例6: 输入数据:CM 预期输出:给出信息LM
字符问题
因果图
中间结果
C1
~ E2
∨ 10
C2
∧ E1
C3
E3
~
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
15
带有E约束的因果图
C1
~ E2
E
∨ 10
C2
∧ E1
C3
E3
~
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
16
将因果图转化为决策表
123 4 5 6 7 8
C1 1 1 1 1 0 0 0 0
3. 由因果图转化成决策表,任何由输入与输出之间关系构成的路径,形成决策表的 一列
4. 将决策表的每一列拿出来作为依据,设计测试用例。一般来说,决策表中的每一 列对应一条测试用例。
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
11
字符问题
某个软件的规格说明书中规定:第一个字符必须是A或B,第 二个字符必须是一个数字,在此情况下进行文件的修改,但如 果第一个字符不正确,则给出信息L;如果第二个字符不正 确,则给出信息M。
13
字符问题
原因:
C1:第一个字符是A; C2:第一个字符是B; C3:第二个字符是一个数字.
结果:
E1:修改文件; E2:给出信息L;(第一个字符不对给出信息L) E3:给出信息M;(第二个字符不对给出信息M)厦门理工学院 计机信息工程学院软件工程系 崔建峰
14
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
12
字符问题
分析问题,按照如下步骤进行:
(1)根据软件规格说明书,列出原因和 结果.
(2)找出原因和结果之间的关系,原因 和原因之间的约束关系,画出因果图.
(3)将因果图转化为判定表 (4)根据判定表设计测试用例.
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
2
因果图法
如果输入之间有关系,我们在测试时必须考虑输入 条件的各种组合,那么可以考虑使用一种适合于描
述对于多种条件的组合,相应产生多个动作的形式来设计 测试用例,这就需要利用因果图。
通过因果图,可以建立输入条件和输出之 间的逻辑模型,从而比较容易确定输入条件组合和输
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
8
约束关系说明
R约束(要求):a是1时,b必须是1,即a为1时,b不能为0
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
9
约束关系说明
M约束:对输出条件的约束,若结果a为1,则结果b必须为0.
厦门理工学院 计算机信息工程学院软件工程系 崔建峰
相关文档
最新文档