扫描工具(Coverity代码扫描工具)

80酷酷网    80kuku.com

扫描工具(Coverity代码扫描工具)

1.说明:Coverity代码扫描工具可以扫描java,C/C++等语言,可以和jenkins联动,不过就是要收钱,jenkins上的插件可以用,免费的,适用于小的java项目

一,扫描Java代码

1.扫描.java文件

源代码在附件FileName.java。

1)执行命令

cov-configure --java

cov-build --dir results javac FileName.java

cov-analyze --dir results --all --aggressiveness-level high

cov-format-errors --dir results --html-output htmlResults

cov-commit-defects --host IP1 --dataport 9090 --stream TEST.java --version 0.0.1 --user Username --password Password --dir results

2)命令截图

cov-configure命令:

Coverity代码扫描工具

cov-build命令:

Coverity代码扫描工具

cov-analyze命令:

Coverity代码扫描工具

cov-format-errors命令:

Coverity代码扫描工具

附件htmlResults.zip保存 CoverityClient分析后的结果。

cov-commit-defects命令:

Coverity代码扫描工具

3)查看结果

访问,在coverity server 主页面上可以看到该项目的issues。

Coverity代码扫描工具

可在configuration-projects&streams中查看TEST.java关于build detail 和analyze detail的相关信息。

Coverity代码扫描工具

2.扫描maven管理的java项目

1) command

cov-configure --java

cov-build --dir results mvn clean install

cov-analyze --dir results --all -aggressiveness-level high

cov-format-errors --dir results --html-output htmlResults

cov-commit-defects --host 10.116.24.183 --dataport 9090 --stream jenkins_pipeline_java_maven-master --version 0.0.1 --user Username --password Password --dir results

2) 命令截图

cov-configure命令:

Coverity代码扫描工具

cov-build结果如图:

Coverity代码扫描工具

Coverity代码扫描工具

cov-analyze结果:

Coverity代码扫描工具

Coverity代码扫描工具

cov-format-errors命令:

Coverity代码扫描工具

Coverity Client扫描结果可在附件mavenResults.zip中的htmlResults中查看。

cov-commit-defects命令:

Coverity代码扫描工具

3)查看结果

因为没有检测到问题,所以在coverity server 主页面上看不到该项目的issues。

可在configuration-projects&streams中查看
jenkins_pipeline_java_maven-master 关于build detail 和analyze detail的相关信息。

Coverity代码扫描工具

3.扫描gradle管理的java项目

1)应新建init.gradle文件

allprojects {
tasks.withType(JavaCompile) {
if (project.hasProperty("forCoverity")) {
options.sourcepath = files('/this/directory/must/not/exists')
}
}
}

2)执行命令

cov-configure --java

cov-build --dir result gradle clean build --no-daemon --init-script init.gradle -PforCoverity

cov-analyze --dir result --all --aggressiveness-level high

cov-format-errors --dir result --html-output htmlResults

3)命令截图

执行cov-build 命令图片:

Coverity代码扫描工具

执行cov-analyze命令图片:

Coverity代码扫描工具

执行cov-format-errors命令图片:

Coverity代码扫描工具

coverity client 扫描结果可在附件gradle.zip中htmlResults查看。

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: