问题 单项选择题

在测试用例设计中,有语句覆盖、条件覆盖、判定覆盖(即分支覆盖)、路径覆盖等,其中 (43) 是最强的覆盖准则。为了对如图9-2所示的程序段进行覆盖测试,必须适当地选取测试数据组。若x,y是两个变量,可供选择的测试数据组共有Ⅰ,Ⅱ,Ⅲ,Ⅳ四组(如表9-3所示),则实现判定覆盖至少应采用的测试数据组是 (44) ;实现条件覆盖至少应采用的测试数据组是 (45) ;实现路径覆盖至少应采用的测试数据组是 (46) (47)

表9-3测试数据组

 

 zy
测试数据组Ⅰ03
测试数据组Ⅱ12
测试数据组Ⅲ-12
测试数据组Ⅳ31

 

47()

A.Ⅰ和Ⅱ组

B.Ⅰ和Ⅲ组

C.Ⅲ和Ⅳ组

D.Ⅰ和Ⅳ组

E.Ⅰ,Ⅱ和Ⅲ组

F.Ⅱ,Ⅲ和Ⅳ组

G.Ⅰ,Ⅲ和Ⅳ组

H.Ⅱ,Ⅱ和Ⅳ组

答案

参考答案:H

解析:

有关覆盖的标准和概念,请读者参考本节练习1的分析。

解答此类试题,需要考生具有良好的耐心,用所给定的数据组代入到流程图中,然后进行判断。

在图9-2中,共有2个判定,第1组数据(x=0,y=3)可以使第1个判定((x=0) And(y>2))取真值,使第2个判定((z<1)OR(y=1))也取真值。第Ⅱ组数据(x=1, y=2)使第1个判定和第2个判定都取假值。因此,要达到判定覆盖的标准,只要第1组数据和第Ⅱ组数据就足够了。

在2个判定中,共4个条件(x=0;y>2;x<l;y=1),要满足条件覆盖的标准,则必须使这4个条件各取一次真值和假值。我们选取数据情况如表9-3所示。

                       表9-3  满足条件覆盖的情况

测试数据组x=0y>2x<1y=1
第Ⅰ组(x=0,y=3)
第Ⅳ组(x=3,y=1)

  因此,要达到条件覆盖的标准,只要选取第1组数据和第1V组数据就可以了。

  在图9-2中,共有3条路径,分别是:

  (1)第1个判定取真的路径;

  (2)第1个判定取假而第2个判定取真的路径;

  (3)第1个判定取假且第2个判定取假的路径。

  我们选取的数据情况如表9-4和表9-5所示。

                       表9-4  满足路径覆盖的情况一

测试数据组路径(1)路径(2)路径(3)
第Ⅰ组(x=0,y=3)  
第Ⅱ组(x=1,y=2)  
第Ⅲ组(x=-1,y=2)  

                       表9-5  满足路径覆盖的情况二

测试数据组路径(1)路径(2)路径(3)
第Ⅰ组(x=0,y=3)  
第Ⅱ组(x=1,y=2)  
第Ⅳ组(x=3,y=1)  

  因此,要达到路径覆盖的标准,可选取第Ⅰ、Ⅱ、Ⅲ组数据,或者选取第Ⅰ、Ⅱ、Ⅳ组数据。

选择题
单项选择题