• 软件测试词典

圈复杂度


什么是圈复杂度?

循环复杂度是与许多编码错误相关的源代码复杂度测量。它是通过开发代码的控制流图来计算的,该代码测量通过程序模块的线性独立路径的数量。

降低程序的圈复杂度,降低修改风险,更容易理解。它可以用下面的公式表示:

Cyclomatic complexity = E - N + 2*P 
where,
  E = number of edges in the flow graph.
  N = number of nodes in the flow graph.
  P = number of nodes that have exit points

例子 :

IF A = 10 THEN 
 IF B > C THEN 
   A = B
 ELSE
   A = C
 ENDIF
ENDIF
Print A
Print B
Print C

流程图:

测试生命周期中的循环复杂度

使用上面的控制流程图计算圈复杂度,该流程图显示七个节点(形状)和八条边(线),因此圈复杂度为 8 - 7 + 2 = 3