- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
把程序看成装在一个透明的白盒子里,程序的结构和处理呈现过程完全可见,按照程序的内部逻辑测试程序,以检查程序中的每条通路是否都能按照预先要求正确工作。
第3章 白盒测试方法
逻辑覆盖测试
白盒测试的常用方法
思考
如果被误写成 if((a=b+c)(ba+c)(ca+b)),
基本路径测试的四个用例(68,68,56), (68,60,56), (68,68,68), (68,8,56)是否可以发现这个问题?
3.3 分支-条件测试
测试思想
根据模块中的逻辑条件设计测试用例,使得被测模块中的每一个复合条件以及构成这个复合条件的每一个简单条件的真假情况至少被执行一次。
简单条件是一个布尔变量或一个可能带有NOT(“┓”)操作符的关系表达式,关系表达式的形式如:E1<关系操作符>E2,其中E1和E2是算术表达式,而<关系操作符>是下列之一:“<”,“≤”,“=”,“≠”(“┓=”),“>”, 或“≥”
复合条件由简单条件、布尔操作符和括弧组成。假定可用于复合条件的布尔算子包括OR“|”,AND“&”和NOT“┓”,不含关系表达式的条件称为布尔表达式。
分支-条件测试
进行分支-条件测试可以发现下列缺陷
布尔变量错误
布尔括弧错误
关系操作符错误
算术表达式错误
布尔操作符错误
遗漏布尔操作符
布尔操作符多余
布尔操作符不正确
案例
使用分支-条件方法设计下面逻辑条件的测试用例
需被测试的逻辑条件
复合条件
((ab+c) (ba+c) (ca+b))
简单条件
ab+c
ba+c
ca+b
案例
((ab+c) (ba+c) (ca+b))
ab+c
ba+c
ca+b
68,68,68
T
T
T
T
0,0,0
F
F
F
F
上面的测试用例不推荐大家使用
测试用例有效性不高: t t=t || t=t 同时 f f=f || f=f
((ab+c) || (ba+c) (ca+b))
((ab+c) (ba+c) ||(ca+b))
((ab+c) || (ba+c) || (ca+b))
使用“同真同假”测试用例时,测试用例的有效性不高
对分支-条件测试的讨论
((ab+c) (ba+c) (ca+b))
ab+c
ba+c
ca+b
68,68,68
T
T
T
T
68, 8,56
F
F
T
T
8, 68,56
F
T
F
T
8, 56,68
F
T
T
F
这组测试用例的结果又如何?
((a=b+c) (ba+c) (ca+b))?
案例
((ab+c) (ba+c) (ca+b))
ab+c
ba+c
ca+b
68,68,68
T
T
T
T
68, 8,60
F
F
T
T
8, 68,60
F
T
F
T
8, 60,68
F
T
T
F
使用上面的测试用例,是否可以发现下面的缺陷
((a=b+c) (ba+c) (ca+b))
((ab+c) || (ba+c) (ca+b))
((ab+c) (ba+c) ||(ca+b))
((ab+c) || (ba+c) || (ca+b))
结论
分支-条件测试可以发现但并不保证发现所有下列缺陷
布尔变量错误
布尔括弧错误
关系操作符错误
算术表达式错误
布尔操作符错误
遗漏布尔操作符
布尔操作符多余
布尔操作符不正确
因此,实际设计测试用例过程中要结合具体问题选取恰当的测试输入
推荐
为了最大限度的发现缺陷,在进行分支-条件测试时,推荐参考下面方法设计相应被测逻辑条件的测试用例。
对于表达式:A1A2 … An,设计测试用例覆盖下面的情况。a. 所有Ai均为真;b. 设计n个测试用例,其中仅有一个为F,其余均为T,如对于ABC,覆盖下面的情况如下表所示
ABC
A
B
C
T
T
T
F
T
T
T
F
T
T
T
F
推荐
对于表达式:A1||A2|| … An,设计测试用例覆盖下面的情况。a. 所有Ai均为假;b. 设计n个测试用例,其中仅有一个为T,其余均为F,如对于A||B||C,覆盖下面的情况如下表所示
A||B||C
A
B
C
F
F
F
T
F
F
F
T
F
F
F
T
推荐
(AB)||C
A
B
C
F
T
T
T
T
F
F
T
F
T
F
F
A(B||C)
A
B
C
T
F
F
T
F
T
T
T
F
F
F
T
A||(BC)
A
B
C
T
T
F
F
T
T
F
F
T
F
T
F
对于表达式中含有两个布尔操作符的情况如下表所示
(A||B)C
A
B
C
F
F
T
F
T
T
T
F
T
F
T
F
推荐
对于表达式中含有三个布尔操作符,其中仅有一个“”的情况如何?(略)
对于表达式中含有三个布尔操作符,其中含有两个””的情况如何?(略)
注
文档评论(0)