初试Coverity对C++代码的静态检查

之前一直在使用一个版本的goanna做C++静态代码,前两天搞到一套Coverity,尝试安装了一下,发现Coverity检查功能还是挺强大,之前goanna未检查出得一些问题它检查出来了,比如
if ((x & 0×80) == 1)) {
}
这么一个判断代码,之前的goanna就没有报出问题,这个Coverity就报出了一个无效语句的问题,一下子发现等于的判断条件写错了。
Coverity的简单使用流程
第一步, 使用 cov-build 捕获代码Build过程涉及到得文件

./cov-build --dir . make

第二步, 使用 cov-analysis 对捕获的结果做代码分析(分析在cov-build步骤捕获到得相关代码文件)

./cov-analysis --dir .

第三步, 使用 cov-format-errors 输出html格式的分析结果,方便查看出问题得代码位置做代码修订。(这一步也可以使用 cov-commit-defects 提交分析结果到中心服务器,没有安装 platform 没有做效果尝试)

./cov-format-errors --dir . --html-output ./html

打开html目录下的 index.html 即可查看分析结果。

Popularity: 13% [?]

Random Posts

Comments

Comments are closed.