根据McCabe环路复杂性度量,下面程序图(图5-2)的复杂度是(1),对这个程序进行路径覆盖测试,可得到的基本路径是(2)。 (2)

admin2019-05-04  70

问题 根据McCabe环路复杂性度量,下面程序图(图5-2)的复杂度是(1),对这个程序进行路径覆盖测试,可得到的基本路径是(2)。

(2)

选项 A、ABCHIK;ABCHJK:ABCDEFG
B、ABCHIK;ABCHJK;ABCDEFGCHIK:ABCDEGCHIK
C、ABCHIK;ABCHJK;ABCDEFGCHIK:ABDEGCHJK
D、ABCHIK;ABCHJK;ABCDEFGCHIK;ABCDEFGCHJK;ABCDEGCHIK

答案B

解析 对程序图环路复杂度的求解有3种方法。解法1:程序图的环路数是源代码复杂程度的度量。根据McCabe度量法,环路数N=e-n+2,其中,e表示有向图的边数,n表示节点数。图5-2中e=13,n=11,得到N=13-11+2=4。
   解法2:计算有向图把平面划分成的区域数。图5-2中有3个闭合区域外加1个开放区域,共4个区域。所以程序图的复杂度是4。
   解法3:图5-2中有3个判断节点,即节点C、E、H,所以程序图的复杂度是判断节点数加1,即3+1=4。
   路径测试的关键是要找出程序图中所有可能的路径,这些基本路径都是从程序起点到终点,并且包含了至少一条独立的边。对图5-2所示的程序进行路径覆盖测试,可得到4条基本路径:ABCHIK;ABCHJK;ABCDEFGCHIK;ABCDEGCHIK。
转载请注明原文地址:https://kaotiyun.com/show/7gLZ777K
0

最新回复(0)