圈复杂度和代码覆盖率

圈复杂度和代码覆盖率(转载请注明来源于金庆的专栏)100%代码覆盖率的单元测试并不代表是足够的测试,下面是一个例子:int foo(bool isOK){ const int ZERO = 0; int* pInt = NULL; if (isOk) { pInt = &ZERO; } return *pInt;}如果仅仅测试一种情况: foo(true);结果是,测试通过,并具有100%的代码覆盖率。但我们知道foo(false);就会失败。这里就要引入圈复杂度(Cyclomatic Complexity,CC)的概念。圈...
基础知识 | 2010-10-12 23:09 | 阅读 4823 次 | 评论 1 条
浏览1872174次