310页
介绍
McCabe 度量法,也被称为循环复杂度(Cyclomatic Complexity),是由 Thomas J. McCabe, Sr. 在 1976 年提出的一种软件 程序复杂度 的量度方法。
主要用于衡量一个程序单元(如函数、方法、模块等)的复杂度。
步骤
- 根据程序画出
程序流程图 - 根据图进行计算,计算方式有下面两种
计算方式
方法一:公式计算(复杂)
V(G) = E - N + 2
解释:
- E:表示程序控制流图中 边的数量;
- N:表示程序控制流图中 节点的数量;
关键:上图 线的交叉点,也算 一个结点,如下图:
缺点:边 和 结点太多,复杂麻烦容易错
方法二(推荐)
最小独立闭环数 + 1
有 4 个最小独立闭环数,所以复杂度是 5
题
采用McCabe度量法计算下图所示程序的环路复杂性为( )
A、1
B、N
C、3
D、4
答案
C,有 2 个 最小独立闭环,所以 2+1=3
题
若用白盒测试方法测试以下代码,并满足条件覆盖,则至少需要( )个测试用例。平采用McCabe度量法算出该程序的环路复杂度为( )
A、3
B、4
C、5
D、6
A、1
B、2
C、3
D、4
第一问答案
根据程序画出程序流程图如下,
测试用例1:i>j为 真,i>k 为 真
测试用例2:i>j为 真,i>k 为 假
测试用例3:i>j为 假,j>k 为 真
测试用例4:i>j为 假,j>k 为 假
答案:B
第二问答案
有 3 个 最小独立闭环,所以复杂度:3 + 1 = 4
答案:D





