什么是圈负责度:
比较通用的解释:一种代码复杂度的衡量标准,中文名称叫做圈复杂度。在软件测试的概念里,圈复杂度“用来衡量一个模块判定结构的复杂程度,数量上表现为独立现行路径条数,即合理的预防错误所需测试的最少路径条数,圈复杂度大说明程序代码可能质量低且难于测试和维护,根据经验,程序的可能错误和高的圈复杂度有着很大关系”。
圈复杂度是一种为程序逻辑复杂性提供定量测度的软件度量,将该度量用于计算程序的基本的独立路径数目,为确保所有语句至少执行一次的测试数量的上界。独立路径必须包含一条在定义之前不曾用到的边。
有以下三种方法计算圈复杂度:
1,流图中区域的数量对应于环型的复杂性;
2,给定流图G的圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量;
3,给定流图G的圈复杂度V(G),定义为V(G)=P+1,P是流图G中判定结点的数量。
没有流程图的算法:
碰到以下项加 1:
-
分支数(如 if、while 和 do while)
-
switch 中的 case 语句数
-
如果条件是2个复合条件的话 不是加1 是加2