问题 单项选择题

根据McCabe环路复杂性度量,程序如下图的复杂度是 (23) ,对这个程序进行路径覆盖测试,可得到的基本路径是 (24)

(24)是()

A.A-B-C-H-I-K;A-B-C-H-J-K;A-B-C-D-E-F-G

B.A-B-C-H-I-K;A-B-C-H-J-K;A-B-C-D-E-F-G-C-H-I-K;A-B-C-D-E-G-C-H-I-K

C.A-B-C-H-I-K;A-B-C-H-J-K:A-B-C-D-E-F-G-C-H-I-K;A-B-D-E-G-C-H-J-K

D.A-B-C-H-I-K;A-B-C-H-J-K;A-B-C-D-E-F-G-C-H-I-K;A-B-C-D-E-F-G-C-H-J-K:A-B-C-D-E-G-C-H-I-K

答案

参考答案:B

解析:

程序图的环路数是源代码复杂程度的度量。根据McCabe度量法,环路数N=e-n+2,这里e表示有向图的边数,n表示结点数。在图中,e=13,n=11,可得到N=4。

另外一种方法是计算有向图把平面划分成的区域数,这里有3个闭合区域,外加1个开放区域,共4个区域。所以,程序图的复杂度是4。

路径测试的关键是要找出程序图中所有可能的路径。对这个程序进行路径覆盖测试,可得到4条基本路径。

(1)A-B-C-H-I-K。

(2)A-B-C-H-J-K。

(3)A-B-C-D-E-F-G-C-H-I-K。

(4)A-B-C-D-E-G-C-H-I-K。

所有基本路径都是从程序起点到终点,并且至少包含一条独立的边。

单项选择题 案例分析题
单项选择题 C型题