若用白盒测试方法测试以下代码,并满足条件覆盖,则至少需要(  )个测试用例。采用

练习题库2022-08-02  39

问题 若用白盒测试方法测试以下代码,并满足条件覆盖,则至少需要(  )个测试用例。采用McCabe度量法算出该程序的环路复杂性为(  )。Int find_max(int i,int j,int k){int max;if(i>j)thenif(i>k)then max=i;else max=k;else if(j>k)then max=j;else max=k;}问题1选项A.3B.4C.5D.6问题2选项A.1B.2C.3D.4

选项

答案 BD

解析 1.第一空要求条件覆盖,根据代码,我们可以发现,虽然有3个判断语句,但实际从第一层判断开始,只能分2条支路判断进行,不会经过第3次判断了,因此如果要满足条件覆盖,只需要分别满足2层条件判断,需要的用例个数是4。如下用例(i,j,k):(1,0,-1)(1,0,2)(0,1,-1)(0,1,2)可以满足条件覆盖。2.要计算McCabe复杂度需要先绘制出图,代码转换图如下:然后采用公式V(G)=m-n+2计算环路复杂度,其中m是边的数量,n是结点的数量。图中结点数n是9,边的数量是11,环路复杂度为11-9+2=4,第二空选择D选项。
转载请注明原文地址:https://tihaiku.com/congyezige/2410382.html

最新回复(0)