覆盖率(白盒)测试(二)
(总分96, 做题时间90分钟)
一、选择题
1.
路径覆盖必定也满足______。
A 语句覆盖
B 条件覆盖
C 判定覆盖
D 条件组合覆盖
分值: 2
答案:A
2.
设有一段程序如下:
if((a==b) and ((c==d) or (e==f))) do S1
else if((p==q) or (s==t)) do S2
else do S3
满足判定/条件覆盖的要求下,最少的测试用例数目是______。
if((a==b) and ((c==d) or (e==f))) do S1
else if((p==q) or (s==t)) do S2
else do S3
满足判定/条件覆盖的要求下,最少的测试用例数目是______。
A 6
B 8
C 3
D 4
分值: 2
答案:C
[分析] 判定/条件覆盖,就是设计足够的测试用例,使得判定语句中每个条件的所有可能取值至少评价一次,同时每个判定语句本身所有可能分支也至少评价一次。
本程序一共有两个判定语句和三条路径。
若以1代表某一个条件为真,0代表为假,则对于(a==b)、(c==d)、(e==f)、(p==q)、(s==t)这5个条件,取不同的真值组合,即可设计出相应的测试用例,达到判定/条件覆盖的要求。在这里,先取(a==b)、(c==d)、(e==f)为101,(p==q)、(s==t)为任意值,然后取全部5个条件为010 11和010 00,即能达到判定/条件覆盖的要求。
本程序一共有两个判定语句和三条路径。
若以1代表某一个条件为真,0代表为假,则对于(a==b)、(c==d)、(e==f)、(p==q)、(s==t)这5个条件,取不同的真值组合,即可设计出相应的测试用例,达到判定/条件覆盖的要求。在这里,先取(a==b)、(c==d)、(e==f)为101,(p==q)、(s==t)为任意值,然后取全部5个条件为010 11和010 00,即能达到判定/条件覆盖的要求。
3.
在以下有关逻辑覆盖的说法中错误的是______。
A 所有满足条件组合覆盖标准的测试用例集,也满足路径覆盖的覆盖标准
B 条件覆盖能够查出条件中包含的错误,但有时达不到判定覆盖的覆盖率要求
C 路径覆盖的差错能力很强,但有时达不到条件组合覆盖的覆盖率要求
D 判定覆盖包含了语句覆盖,但它不能保证每个错误条件都能检查出来
分值: 2
答案:A
[分析] 满足了条件覆盖,并不一定满足判定覆盖。尽管路径覆盖比判定/条件覆盖更强,但是路径覆盖并不一定能包含判定/条件覆盖。
4.
下列几种逻辑覆盖标准中,设计足够的测试用例,运行被测程序,使得程序中所有可能的路径至少执行一次,称为______。
A 判定覆盖
B 条件覆盖
C 语句覆盖
D 路径覆盖
分值: 2
答案:D
5.
如果一个判定中的复合条件表达式为(A>1)or(B<=3),则为了达到100%的判定覆盖率,至少需要设计多少个测试用例______。
A 1个
B 2个
C 3个
D 4个
分值: 2
答案:B
6.
下面有关逻辑覆盖的说法中错误的是______。
A DDP覆盖式判定覆盖的一个变体
B 满足条件覆盖一定也满足判定覆盖
C 指令快覆盖属于语句覆盖
D 若判定覆盖率道道100%,则语句覆盖率一定也达到100%
分值: 2
答案:B
[分析] 条件覆盖是指设计若干个测试用例,运行被测程序,使得程序中每个判定的每个条件的可能取值至少评价一次。而判定覆盖是设计测试用例,使得程序中每个判定的取真分支和取假分支至少评价一次。二者没有必然的联系,故满足条件覆盖的未必会满足判定覆盖,选项B错误。而满足判定覆盖一定会满足语句覆盖是容易理解的,因为每个判定的取真分支和取假分支都至少评价一次,必然预示着每个可执行语句至少评价了一次,即满足了语句覆盖。另外指令块覆盖足语句覆盖的一个变体,而DDP覆盖(判定路径覆盖)是判定覆盖的一个变体。
7.
如果程序通过了100%的代码覆盖率测试,则说明程序满足了______。
A 语句覆盖
B 编程规范
C 设计规格
D 功能需求
分值: 2
答案:A
[分析] 语句覆盖就是设计若干测试用例,运行被测程序,使得每一可执行语句至少执行一次。
8.
下列指导选择和使用测试覆盖率的原则中错误的是______。
A 覆盖率不是目的,仅是一种手段
B 不要追求绝对100%的覆盖率
C 不可能针对所有的覆盖率指标来选择测试用例
D 只根据测试覆盖率指标来指导测试用例的设计
分值: 2
答案:while语句流程图怎么画D
[分析] 在选择和使用覆盖率时,应该注意以下原则:
(1)覆盖率只是一种手段,不是测试的最终目的。
(2)不可能针对所有的覆盖率进行测试,但如果只考虑一种覆盖率也是不妥的。
(3)不要追求绝对1009自的覆盖率。
(4)设计测试用例时,不仅要考虑到覆盖率,还应综合考虑其他方面,如成本等。
(1)覆盖率只是一种手段,不是测试的最终目的。
(2)不可能针对所有的覆盖率进行测试,但如果只考虑一种覆盖率也是不妥的。
(3)不要追求绝对1009自的覆盖率。
(4)设计测试用例时,不仅要考虑到覆盖率,还应综合考虑其他方面,如成本等。
根据以上原则,A、B、C的说法均正确,而D说法不当,覆盖率不是唯一的参考指标。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论