@IT·互联网

Java代码静态检测工具比较

2018-07-16  本文已影响10人  caison
Zero-day.jpg

最近团队想引进代码静态检测工具,稍微调研一下:

工具比较

功能比较

Checkstyle FindBugs PMD Jtest SonarQube
使用方式 IDE插件 IDE插件 IDE插件 IDE插件 IDE插件+独立部署的服务
自定义规则
集成到Jenkins中
多版本统计
缺陷跟踪记录统计
代码测试覆盖率
(需要配合jacoco)

工具查错能力比较

代码缺陷分类 示例 Checkstyle FindBugs PMD Jtest
引用操作 空指针引用
对象操作 对象比较(使用 == 而不是 equals)
表达式复杂化 多余的 if 语句
数组使用 数组下标越界
未使用变量或代码段 未使用变量
资源回收 I/O 未关闭
方法调用 未使用方法返回值
代码设计 空的 try/catch/finally 块

SonarQube 特征

Sonarqube-nemo-dashboard

参考

Java静态检测工具/Java代码规范和质量检查简单介绍(转)

常用 Java 静态代码分析工具的分析与比较

SonarQube维基百科

上一篇 下一篇

猜你喜欢

热点阅读