Jim*_*Jim 3 c++ static-analysis
我们已开始在代码库中使用静态分析器(Coverity).我们收到了大量的警告(数十万),我们很快就被惊呆了,整个团队需要几个月的时间才能清除它们(不可思议的是不可能).
我们到目前为止讨论的选项是
1)雇用承包商来整理警告并修复它们 - 他的缺点是:我们可能需要非常经验的人来做所有这些修改,并且没有承包商需要了解代码.
2)过滤掉警告并仅处理危险警告 - 这里的问题是我们的静态分析输出总是被警告混乱,使我们难以隔离问题.过滤警告也是一项重大努力.
无论哪种方式,将我们的代码带到一个状态,当静态分析器对我们来说是一个有用的工具似乎是一个巨大的任务.
那么如何才能使用静态分析仪,而无需将当前的开发工作纳入完整的支架?
每周一天:开启分析; 挑选100个最烦人的警告; 解决它们; 关闭分析.简而言之:不要惊慌; 你的代码按原样运行(不是吗?); 以一口大小的方式处理警告.
如果您发现相同类型的警告再次出现(错误的编码实践),请教育您的团队将来避免使用它们.
我用一个旧的代码库做了这个:我早上进入(在团队的其他成员之前),在编译器上调高警告/分析级别,修复一些警告,然后将其设置回默认值.