圈复杂度就是统计一个函数有多少个分支(if,while,for等)每增加一个分支,复杂度加1。
简单来说,就是相当于需要多少个测试用例才能对这个函数做到全路径覆盖。
计算方法:
(1)由1计算,一直往下通过程序。
(2)一旦遇到以下关键字或同类的词,如if ,while,repeat,for,and ,or,CC加1。
(3)switch-case语句的每一种情况加1。
降低函数复杂度的方法:
提炼函数、
替换算法、
分节条件表达式、
合并条件式、
合并重复的条件片段、
移除控制标志、
将查询函数和修改函数分离、
令函数携带参数
以明确函数取代参数。