- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
白盒测试练习题
1、为以下流程图所示的程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。
X8 AND Y5
X8 AND Y5
X0 OR Y0
引用语句1
引用语句2
N
Y
N
Y
X16 OR Y10
引用语句3
N
Y
a
b
c
d
e
f
g
a
a
e
b
c
d
f
语句覆盖:X=17,y=6; x=1,y=4; x=10,y=-1;
判定覆盖:x=18,y=7; x=3,y=2; x=1,y=-2; x=9,y=9
条件覆盖:
对于第一个判定( (x8)y5) ):
条件x8 取真值记为T1,取假值记为F1
条件y5 取真值记为T2,取假值记为F2
对于第二个判定( (x16)||(y10) ):
条件x16 取真值记为T3,取假值记为F3
条件y10 取真值记为T4,取假值记为F4
对于第三个判定((x0)||(y0):
条件x0 取真值记为T5,取假值记为F5
条件y0 取真值记为T6,取假值记为F6
测试用例
执行路径
覆盖条件
覆盖分支
x=20,y=11
aef
T1,T2,T3,T4
ef
x=10,y=7
aeg
T1,T2,F3,F4
eg
x=-1,y=-2
abc
F1,F2,F5,F6
bc
x=0,y=2
abd
F1,F2,T5,T6
bd
判定/条件覆盖:
测试用例
执行路径
覆盖条件
覆盖分支
x=20,y=11
aef
T1,T2,T3,T4
ef
x=10,y=7
aeg
T1,T2,F3,F4
eg
x=-1,y=-2
abc
F1,F2,F5,F6
bc
x=0,y=2
abd
F1,F2,T5,T6
bd
组合覆盖:
1.X8,Y5:T1T2
2.X8,Y=5:T1F2
3.X=8,Y5:F1T2
4.X=8,Y=5:F1F2
5.X0,Y0:T5T6
6.X0,Y=0:T5F6
7.X=0,Y0:F5T6
8.X=0,Y=0:F5F6
9.X16,Y10:T3T4
10.X16,Y=10:T3F4
11.X=16,Y10:F3T4
12.X=16,Y=10:F3F4
测试用例
执行路径
覆盖条件
覆盖组合号
x=18、y=13
aef
T1T2T3T4
1,9
x=9、y=4
abd
T1F2T5T6
2,5
X=-1、y=-2
abc
F1F2F5F6
4,8
x=、y=
2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。程序如下,请按要求设计测试用例。
要求:
画出流程图分别写出满足语句覆盖和判定覆盖的测试用例
1
1
3
4
5
6
7
8
9
11
语句覆盖:c=a;c= ;c=0;c=,
判定覆盖:c=a,;c= ;c=0;c=,
1)画出控制流图;
3
3
5
7
4
6
9
8
11
2
2)分析复杂性;
V(G)=5
3)给出独立路径并设计测试用例;
路径1: 2-11
路径2: 2-3-4-11
路径3: 2-3-5-6-11
路径4: 2-3-5-7-8-11
路径5: 2-3-5-7-9-11
4)画出N-S图;
5)计算要满足覆盖所需要的最少测试用例数;
6)设计满足条件覆盖的测试用例。
7)设计满足条件组合覆盖的测试用例
#include stdio.h
void main()
{
char c;
int letters=0,space=0,digit=0,other=0; ①
printf(请输入一行字符:\n);
while((c=getchar())!=\n) ②
{
if(c=a c=z || c=A c=Z) ③
letters++; ④
else if(c== ) ⑤
space++; ⑥
else if(c=0 c=9) ⑦
digit++; ⑧
else
other++; ⑨
} ⑩
printf(其中:字母数=%d,空格数=%d ,数字数=%d ,其它字符数=%d\n,letters,space,digit,other); ⑾
}
原创力文档


文档评论(0)