第05讲、使用因果图法设计测试用例

一、应用场合

? 在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法。

二、因果图核心

1、因——原因,输入条件

2、果——结果,输出结果

使用图形的方式,分析软件输入和输出的对应关系

三、图形符号

1、基本图形

表示输入和输出的对应关系

? (1)恒等 若a=1,b=1 若a=0,b=0

? (2)非 若a=1,b=0 若a=0,b=1

? (3)或 若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,至多有一个1

2、包含(I) a、b、c至少有一个1,不能同时为0

3、唯一(0) 表示a、b、c必须有一个成立,有且仅有一个

4、要求 (R) 若a=1,b必须为1

5、屏蔽 (M) 若a=1,b必须为0

说明:唯一的情况是有一个默认值的;互斥没有默认值。

四、使用因果图法分析程序

1、找出所有的原因(输入),编号

(1)投币50元

(2)投币100元

(3)充值50元

(4)充值100元

2、找出所有的结果(输出),编号

A、充值成功并退卡

B、提示充值成功

C、找零

D、提示错误

步骤1、2就是初步需求分析

3、在步骤一的基础上,找到输入的限制关系和组合关系

(1)限制关系(哪些输入不能组合)

? 输入1、2不能 互斥

? 输入3、4不能 互斥

画出限制关系的因果图

(2)组合关系 决定了测试用例的数量

? 输入1、3组合

? 输入1、4组合

? 输入2、3组合

? 输入2、4组合

? 输入1

? 输入2

? 输入3

? 输入4

4、在步骤2的基础上,找到输出的限制关系和组合关系

(1)限制关系

? 输出A和D不能(互斥)

? 输出B和D不能(互斥)

? 画出限制关系因果图

(2)组合关系

? 输出A和B必须组合

? 输出A、B、C组合

? 输出C、D组合

? 输出D单独

5、找到输入组合和输出组合的对应关系(什么样的输入组合,产生什么样的输出结果)——依据步骤3(2)和4(2)

情况1:

? 输入1、3组合

会产生:

? 输出A和B必须组合

画出输入和输出的因果图

情况2:

? 输入1、4组合

会产生:

? 输出C、D组合

6、根据因果图,画出判定表

7、把判定表的一列转换成一条用例

五、因果图法的局限性

? 每个控件的输入或者取值最好为2个或者3个按钮,比如:按钮按下或者不按下,复选框选择还是不选择,单选按钮点击还是不点击,有三个选项的下拉列表

?

?

原文地址:https://www.cnblogs.com/gerenboke/p/12630742.html

时间: 2024-10-09 20:05:31

第05讲、使用因果图法设计测试用例的相关文章

因果图法设计测试用例

一.使用因果图的好处 1 考虑了多个输入之间的相互组合.相互制约关系 2 能够帮助我们按一定步骤,高效率地选择测试用例,同时还能为我们指出,程序规格说明描述中存在着什么问题 二.利用因果图导出测试用例需要经过的一般步骤 1.分析程序规格说明的描述中,哪些是原因,哪些是结果. 2.分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的因果图 3.在因果图上使用若干个特殊的符号标明特定的约束条件 4.把因果图转换成判定表 5.把判定表中每一列表示的情况写成测试用例三.因果图基本符号

【tool】运用因果图法设计象棋中马行走路线的测试用例

因果图法设计用例 需求规格: 1.如果落点在棋盘外,则不移动棋子; 2.如果落点与起点不构成日字型,则不移动棋子; 3.如果落点处有自己方棋子,则不移动棋子; 4.如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子; 5.如果不属于1-4条,且落点处无棋子,则移动棋子; 6.如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子; 7.如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束. 一.原因条件: 1. 落点在棋盘上; 2. 落点与起点构

基本路径法设计测试用例

基本路径法是白盒测试中使用最为广泛的方法.以下将介绍一下基本路径法如何使用. 基本路径法设计测试用例的步骤基本如下 1.由程序的源代码作为基础导出控制流图 2.计算控制流图的环路复杂度 3.确定基本路径 4.根据基本路径设计测试用例 接下来我举个例子 1 Int IsLeap(int year) 2 { 3 if (year % 4 == 0) 4 { 5 if (year % 100 == 0) 6 { 7 if ( year % 400 == 0) 8 leap = 1; 9 else 10

使用正交表法设计测试用例

1.案例:字符属性设置程序需求:窗体中有多个控件(字体.字符样式.颜色.字号),每个控件有多个取值 字体:仿宋.楷体.华文彩云字符样式:粗体.斜体.下划线颜色:红色.绿色.蓝色字号:20号.30号.40号 使用步骤:1.根据需求形成因子状态表----->因子:控件名称 状态:每个控件对应的取值2.确定所采用的正交表3.将正交表中的字母用文字代替4.一行就是一条测试用例 2.案例:对某人进行查询假设查询某个人时有三个查询条件(查询条件仅考虑填写和不填写两种情况): 根据" 姓名"

【转】场景法设计测试用例

转自:http://blog.sina.com.cn/s/blog_4aa1f1570100acvb.html (一)场景法原理 现在的软件几乎都是用事件触发来控制流程的.象GUI软件.游戏等.事件触发时的情景并形成了场景,而同一事件不同的触发顺序和处理结果就形成了事件流.这种在软件设计方面的思想可以引入到软件测试中,可以生动地 描绘出事件触发时的情景,有利于设计测试用例,同时使测试用例更容易理解和执行. 在测试一个软件的时候,在场景法中,测试流程是软件功能按照正确的事件流实现的一条正确流程,那

等价类划分法设计测试用例

序内部结构,设计测试用例的唯一依据是软件需求规格说明书. 等价类 所谓等价类,是输入条件的一个子集合,该输入集合中的数据对于揭示程序中的错误是等价的.等价类又分为有效等价类和无效等价类.有效等价类代表对程序有效的输入,而无效等价类则是其他任何可能的输入(即不正确的输入值).有效等价类和无效等价类都是使用等价类划分法设计用例时所必须的,因为被测程序若是正确的,就应该既能接受有效的输入,也能接受无效输入的考验. 划分等价类的标准: 1.完备测试.避免冗余; 2.划分等价类重要的是:集合的划分,划分为

正交实验设计法设计测试用例

1.正交表设计测试用例 2.PICT工具相关 什么是pict工具 http://baike.baidu.com/link?url=TW0LG9JTYODOWroQu5LCeiQzCvOTv3ZVGDrhm_WvBUmO3u2qGJ4zcVpogvpFX7iWyqFthaFtd8PEPbcTWrphaa pict工具的使用 http://jingyan.baidu.com/article/2fb0ba4049ac5400f2ec5fb1.html pict工具相关 http://blog.csdn

【转】黑盒设计测试用例方法

1. 等价类法 定义: 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法. 划分等价类:  等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果.等价

设计测试用例的步骤

一.因果图法设计测试用例的步骤:1.分析软件规格说明描述中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件), 并给每个原因和结果赋予一个标识符.2.分析软件规格说明描述中的语义,找出原因与结果之间, 原因与原因之间对应的关系,根据这些关系画出因果图.3.标明约束条件:由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件.4.把因果图转换为判定表.5.把判定表的每一列拿出来作为依据设计测试用例