黑盒测试-因果图、判定表

合集下载

黑盒测试方法——因果分析法

黑盒测试方法——因果分析法
简化目标:合并相似规则
相似规则判断: 有两条或以上规则具有相同动作,并且在条件项 之间存在极大相似,便可以合并
“—”: 表示合并后该条件项与取值无关,称“无关条件”
黑盒测试方法——决策表
决策表化简
《软件测试》阅读决策表化简
1,5 2,4 3 6,7,8 9,11 10,12 13,14 15,16
若Ci出现,则Ei出现;若Ci不出现,则Ei也不出现
(2)非(~):
若C出现,则E不出现;若C不出现,则E出现
(3)或(∨):
若几个Ci中有一个出现,则E出现;若几个Ci都不出现,则E不出现
(4)与(∧):
若几个Ci都出现,则结果出现;若其中一个Ci不出现,则E不出现
黑盒测试方法——因果分析法 因果图
黑盒测试方法——决策表
决策表方法原理
决策表并非因果图的一个辅助工具
适用情形: 输入输出较多且输入之间和输出之间互相制约的 条件较多
决策表: 把作为条件的所有输入的组合以及对应输出都罗 列出来形成的表格。
特点: 能将复杂问题按照各种可能情况全部列出,表示 简明,并避免遗漏
黑盒测试方法——决策表
生成决策表
1
行动
A1 0 0 0 1 0
1
A2 1 1 0 0 0
0
A3 1 0 1 0 1
0
黑盒测试方法——因果分析法
生成测试用例
(1)决策表中的条件——测试用例的输入条件 (2)决策表中的行动——测试用例的期望输出 (3)一条决策规则——一个测试用例
黑盒测试方法——因果分析法
因果分析法总结
Step1:分析规格说明书,识别原因和结果 Step2:在因果图连接原因和结果 Step3:标明原因之间以及结果之间的约束条件 Step4:因果图转换为因果图列表进而生成决策表 Step5:决策表的规则转换为测试用例

因果图判定表设计实验用例黑盒测试报告

因果图判定表设计实验用例黑盒测试报告

南京信息工程大学实验(实习)报告实验(实习)名称黑盒测试(二)实验(实习)日期2014.11.21 得分指导老师系计算机与软件学院专业班级姓名学号实验二黑盒测试(二)一、实验目的理解黑盒测试的基本方法,掌握用判定表法、因果图法黑盒测试用例的设计方法。

二、实验时间2学时三、实验准备主流PC 机一套,要求安装windows 操作系统和Office 工具;四、实验内容1.题目一:某软件的一个模块的需求规格说明书中描述:a)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。

b)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。

请绘制出因果图和判定表,并给出相应的测试用例。

解答:1)根据题意,原因和结果如下:原因:E1-----是年薪制员工;E2-----非年薪制员工;M1-----严重过失;M2-----过失。

结果:R1-----扣年终风险金的4%;R2-----扣年终风险金的2%;R3-----扣当月薪资的8%;R4-----扣当月薪资的4%;因果图1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16条件E1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 E2 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 M1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 M2 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0结果R1 1 0 0 0 R2 0 1 0 0 R3 0 0 1 0 R4 0 0 0 1测试用例 A B C D判定表测试用例为:A,B,C,D;2.题目二:登陆功能说明书:(用户输入和密码输入)1)管理员用户名为“admin”,密码为“123456”,正常登陆2)用户名和密码输入为空,提示“用户和密码不允许为空”在用户名和密码非空的情况下:3)要求用户名必须输入字母,否则提示“输入非法”4)要求密码必须输入数字,否则提示“输入非法”在输入合法的情况下:5)用户名错误,提示“用户名和密码输入错误”,用户名和密码清空6)用户名正确,密码错误,提示“用户名和密码输入错误”,用户名保留,密码清空请用因果图和判定表方法,设计出相应的测试用例。

黑盒测试技术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。

黑盒测试-因果图、判定表

黑盒测试-因果图、判定表

2
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
因果图介绍
恒等 c1 e1

c1 c1
e1

c2 c3 c1
V
e1
与 c2

e1
3
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
条件的约束 • 输入条件约束
9
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 • 根据因果图建立如下的判定表: 根据因果图建立如下的判定表:
条 件 1 2 3 11 22 21 23 1 1 1 1 //// //// // // // //// 2 1 1 0 //// //// // // // //// 3 1 0 1 1 0 1 0 A3 A8 4 1 0 0 1 0 0 1 AM A 5 0 1 1 1 0 1 0 B5 B4 6 0 1 0 1 0 0 1 BN B 7 0 0 1 0 1 0 0 C2 X6 8 0 0 0 0 1 0 1 DY P: : 原 因
5
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
步骤
①分析程序规格说明的描述中,哪些是原因,哪 分析程序规格说明的描述中,哪些是原因, 些是结果。 些是结果。原因常常是输入条件或是输入条件 的等价类。而结果是输出条件。 的等价类。而结果是输出条件。 分析程序规格说明的描述中语义的内容, ②分析程序规格说明的描述中语义的内容,并将 其表示成连接各个原因与各个结果的“因果图” 其表示成连接各个原因与各个结果的“因果图” 由于语法或环境的限制, ③由于语法或环境的限制,有些原因和结果的组 合情况是不可能出现的。 合情况是不可能出现的。为表明这些特定的情 况,在因果图上使用若干个特殊的符号标明约 束条件。 束条件。 把因果图转换成判定表。 ④把因果图转换成判定表。 把判定表中每一列表示的情况写成测试用例。 ⑤把判定表中每一列表示的情况写成测试用例。

黑盒测试-因果图法

黑盒测试-因果图法
2、游客支付房款不足 3、游客选择单人间 4、游客选择双人间 5、游客选择豪华间
结果: 1、该类型的房间被打开,且提醒房款支付不足 2、单人间已经被开启 3、双人间已经被开启 4、豪华间已经被开启
当支付房间全款(即预期入住天数内所有房款)或支付房间房款不足(仅支付定金),选择"单人间"、"双人间"或"豪华间",则相应类型 的房间被开启。若游客支付房款不足,则在开启房门的同时系统提示房款支付不足。
问题:采用因果图进行测试用例设计 第一步:首先分析需求说明,找出原因和结果
原因: 1、游客支付房间全款
A2+B2==(管理人员优秀表现)
C2==2类奖 金
A2+B1+B3==(管理人员普通表 C3==3类奖
现,且有特殊贡献)

A2+B2+B3==(管理人员普通表 C4==4类奖
现,且有特殊贡献)

原因
结果
A1+B1==(普通员工表现普通)
C5==5类奖 金
A1+B2==(普通员工表现优秀)
C6==6类奖 金
员工类别:普通员工A1 管理人员A2
变现类别:普通B1 优秀B2 特殊贡献B3 奖金类别:1类奖金C1 2类奖金C2
.................................... 测试用例如下表:
原因
结果
A2+B1==(管理人员普通表现)
C1==1类 奖金
应用场合:
当软件的输入条件较多的时候,可以考虑用因果图法来设计测试用例。考虑输入的所有排列组合情况,防止遗漏。 因果图的局限性: 假如有n个条件。每个条件有真或假两种取值,理论上就有2的n次方钟排列组合。大大增加了测试用例的个数,不便于维护。

黑盒测试的7种测试方法

黑盒测试的7种测试方法

黑盒测试的7种测试方法黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。

在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。

黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。

很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

黑盒测试有7种测试方法分别是等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、功能图法、正交实验法。

下面将一一介绍。

等价类划分法等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。

该方法是一种重要的,常用的黑盒测试用例设计方法。

1、划分等价类:等价类是指某个输入域的子集合。

在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。

并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。

因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。

取得较好的测试结果。

等价类划分可有两种不同的情况:有效等价类和无效等价类。

有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。

利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

无效等价类:与有效等价类的定义恰巧相反。

设计测试用例时,要同时考虑这两种等价类。

因为,软件不仅要能接收合理的数据,也要能经受意外的考验。

这样的测试才能确保软件具有更高的可靠性。

2、划分等价类的方法:下面给出六条确定等价类的原则。

①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。

黑盒测试_判定表因果图

黑盒测试_判定表因果图

出现
M(屏蔽):两个结果,a为1时,b必须是0,当a为0时,b值不定
a E b I a b c O b a R b b a a M
E(互斥)
I(包含)
O(惟一) R(要求) M(屏蔽)
因果图法设计测试用例的步骤
利用因果图导出测试用例需要经过以下几个步骤:
① 分析程度规格说明的描述中,哪些是原因,哪些是结

e3
因果图法测试举例(续)
(3)将因果图转换成如下所示的决策表:
选项 规则
1 1 1 1
2 1 1 0
3 1 0 1 1
4 1 0 0 1
5 0 1 1 1
6 0 1 0 1
7 0 0 1 0

8 0 0 0 0
√ √
条件: C1 C2 C3 10 动作: e1 e2 e3 不可能 测试用例
√ √ √ √ #3 #A
√ √ *6 *B A1
GT
因果图法测试举例(续)
(4)根据决策表中的每一列设计测试用例: 测试用例编号 1 输入数据 #3 预期输出 修改文件
2
3 4 5 6
#A
*6 *B A1 GT
给出信息M
修改文件 给出信息M 给出信息N 给出信息N和信息M
因果图法实例
某电力公司有A、B、C、D四类收费标准, 并规定: 居民用电 <100度/月 按A类收费 ≥100度/月 按B类收费 动力用电 <10000度/月,非高峰,B类收费 ≥10000度/月,非高峰,C类收费 <10000度/月, 高峰,C类收费 ≥10000度/月, 高峰,D类收费
判定表的缺点及解决方法
判定表的缺点
不能表达重复执行的动作,例如循环结构

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

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

0 0 0 0 0 1
Logo
规则
1
选项
2 1 1 1 0
3 1 1 0 1
4 1 1 0 0 1 0 0
5 1 0 1 1
6 1 0 1 0 0 1 0
7 1 0 0 1 0 0 1
8 1 0 0 0
9 0 1 1 1
10 0 1 1 0
11 0 1 0 1
12 0 1 0 0
13 0 0 1 1
习题2
Logo
• 中国象棋中走马的测试用例设计为例学习 因果图的使用方法(下面未注明的均指的 是对马的说明)
一、 分析中国象棋中走马的实际情况
Logo
1. 如果落点在棋盘外,则不移动棋子; 2. 如果落点与起点不构成日字型,则不移动棋子; 3. 如果在落点方向的邻近交叉点有棋子(绊马腿),则 不移动棋子; 4. 落点处有己方棋子,则不移动棋子; 5. 如果不属于1-4条, 落点处无棋子,则移动棋子; 6. 如果不属于1-4条, 落点处为对方棋子(非老将),则 移动棋子并除去对方棋子; 7. 如果不属于1-4条,且落点处为对方老将,则移动棋 子,并提示战胜对方,游戏结束。
Logo
测试用例
Logo
测试用例1: 输入数据: 年薪制员工,严重过失 预期输出: 扣年终风险金的4% • 测试用例2: 输入数据: 年薪制员工,过失 预期输出: 扣年终风险金的2% • 测试用例3: 输入数据: 非年薪制员工,严重 过失 预期输出: 扣当月薪资的8% • 测试用例4: 输入数据: 非年薪制员工,过失 预期输出: 扣当月薪资的4%
Logo
• 原因:C1. 年薪制员工 • C2. 严重过失 • 中间状态:11. 非年薪制员工 • 12. 过失 • 结果:E1. 扣年终风险金的4% • E2. 扣年终风险金的2% • E3. 扣当月薪资的8% • E4. 扣当月薪资的4%
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
条件的约束 • 输入条件的约束
a R b 输出条件的约束 a M b M约束(强制):若a是1时,则结果 强制为 。 约束(强制):若 是 时 则结果b强制为 强制为0。 约束 ): R约束(要求): 是1时,b必须是 , 约束(要求):a是 时 必须是1, 约束 ): 必须是 即不可能a是 时 是 。 即不可能 是1时b是0。
21----修改文件; 修改文件; 修改文件 22----给出信息 ; 给出信息L; 给出信息 23----给出信息 ; 给出信息M; 给出信息
8
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 因果图和具有约束的因果图: 因果图和具有约束的因果图:
6
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 软件规格说明书: 软件规格说明书 “第一列字符必须是 或B,第二列字符必 第一列字符必须是A或 , 第一列字符必须是 须是一个数字, 须是一个数字,在此情况下进行文件的修 但如果第一列字符不正确, 改。 但如果第一列字符不正确,则给出信 息L,如果第二列字符不是数字,则给出 ,如果第二列字符不是数字, 信息M.” 信息
黑盒测试
因果图、 因果图、判定表测试
因果图
因果图方法( ):一种 因果图方法(Cause-Effect graphics):一种 ): 黑盒测试方法。 黑盒测试方法。 方法的依据: 方法的依据: 需求规格说明中的因果关系。 需求规格说明中的因果关系。 能够帮助我们按照一定步骤,高效率地选择测 能够帮助我们按照一定步骤, 试用例,同时还指出, 试用例,同时还指出,程序规格说明描述中存 在着的问题
5
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
步骤
①分析程序规格说明的描述中,哪些是原因,哪 分析程序规格说明的描述中,哪些是原因, 些是结果。 些是结果。原因常常是输入条件或是输入条件 的等价类。而结果是输出条件。 的等价类。而结果是输出条件。 分析程序规格说明的描述中语义的内容, ②分析程序规格说明的描述中语义的内容,并将 其表示成连接各个原因与各个结果的“因果图” 其表示成连接各个原因与各个结果的“因果图” 由于语法或环境的限制, ③由于语法或环境的限制,有些原因和结果的组 合情况是不可能出现的。 合情况是不可能出现的。为表明这些特定的情 况,在因果图上使用若干个特殊的符号标明约 束条件。 束条件。 把因果图转换成判定表。 ④把因果图转换成判定表。 把判定表中每一列表示的情况写成测试用例。 ⑤把判定表中每一列表示的情况写成测试用例。
11
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
判定表驱动测试 在一些数据处理问题中, 在一些数据处理问题中,某些操作是否实 施依赖于多个逻辑条件的取值; 施依赖于多个逻辑条件的取值; 在这些逻辑条件取值的组合所构成的多种 情况下,分别执行不同的操作; 情况下,分别执行不同的操作; 处理这类问题的一个非常有力的分析和表 达工具是判定表( 达工具是判定表(Decision Table) )
12
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 • 一张关于科技书阅读指南的判定驱动表: 一张关于科技书阅读指南的判定驱动表: • 3个问题 种情况 个问题8种情况 个问题
1 问 题 书 建 议 读 一 阅读 读 X X 读 Y Y Y X X 2 Y Y N 3 Y N Y 4 Y N N 5 N Y Y X X X X 6 N Y N 7 N N Y 8 N N N
a E b a F b c a G b G约束(唯一): ,b中必须有一个且仅有一个为 。 约束(唯一):a, 中必须有一个且仅有一个为 中必须有一个且仅有一个为1。 约束 ): F约束(或):a,b和c中至少有一个必须为 , 约束( ): , 和 中至少有一个必须为 中至少有一个必须为1, 约束 即a,b和c不能同时为 。 , 和 不能同时为0。 不能同时为 E约束(异):a,b中至多有一个可能为 , 约束( ): , 中至多有一个可能为 中至多有一个可能为1, 约束 不能同时为1。 即a和b不能同时为 。 和 不能同时为
16
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
2
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
因果图介绍
恒等 c1 e1

c1 c1
e1

c2 c3 c1
V
e1
与 c2

e1
3
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
条件的约束 • 输入条件约束
7
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 原因和结果: 原因和结果:
原因: 原因: 1----第一列字符是 ; 第一列字符是A; 第一列字符是 2----第一列字符是 ; 第一列字符是B; 第一列字符是 3----第二列字符是一数字; 第二列字符是一数字; 第二列字符是一数字 结果: 结果:
22 1 ∨ 2 3 因果图实例 23 11 ∧ 21 E 2 3 具有E约束的因果图 具有 约束的因果图 23 1 ∨ 11 ∧ 21 22
11为中间节点; 为中间节点; 为中间节点 考虑到原因1和原因 不可能同时为1,因此在因果图上施加E约束 考虑到原因 和原因2不可能同时为 ,因此在因果图上施加 约束 和原因 不可能同时为
13
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
判定表的组成
规则
条 条件桩( 条件桩(Condition stub) ) 动作桩( 动作桩(Action stub) ) 条件项( 条件项(Condition Entity) ) 动作项( 动作项(Action Entity) ) 桩 动作项 件 桩 条件项
X X X X2007 iSoftStone Holdings Ltd. All Rights Reserved.
规则和并的例子 • 规则和并后: 规则和并后:
1 问 题 Y Y 建 议 X X X X 后 2 Y N 3 Y N 4 N N -
14
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
规则及规则和并 • 任何一个条件组合的特定取值及其相应要 执行的操作成为规则, 执行的操作成为规则,在判定表中贯穿条 件项和动作项的一列就是一条规则。显然, 件项和动作项的一列就是一条规则。显然, 判定表中泪出多少组条件取值, 判定表中泪出多少组条件取值,也就有多 少条规则,即条件项和动作项由多少列。 少条规则,即条件项和动作项由多少列。 • 化简 就是规则和并 Y Y Y Y Y Y N N N -- N -• 有两条活多条规则具有相同的动作,并且 有两条活多条规则具有相同的动作, -N Y N N N 其条件项之间存在着极为相似的关系。 其条件项之间存在着极为相似的关系。
动 作
结 果

8 的
的 的 据
因 表的
因 下
1 6

10
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
讨论 在较为复杂的问题中, 在较为复杂的问题中,这个方法常常是十 分有效的, 分有效的,它能有力地帮助我们确定测试 用例。 用例。 如果哪个开发项目在设计阶段就采用了判 定表,也就不必再画因果图, 定表,也就不必再画因果图,而是可以直 接利用判定表设计测试用例了。 接利用判定表设计测试用例了。
9
©2007 iSoftStone Holdings Ltd. All Rights Reserved.
例子 • 根据因果图建立如下的判定表: 根据因果图建立如下的判定表:
条 件 1 2 3 11 22 21 23 1 1 1 1 //// //// // // // //// 2 1 1 0 //// //// // // // //// 3 1 0 1 1 0 1 0 A3 A8 4 1 0 0 1 0 0 1 AM A 5 0 1 1 1 0 1 0 B5 B4 6 0 1 0 1 0 0 1 BN B 7 0 0 1 0 1 0 0 C2 X6 8 0 0 0 0 1 0 1 DY P: : 原 因
相关文档
最新文档