测试背景
使用工具:
- 源伞科技Pinpoint
- Sonarqube
测试项目:
- 开源国产CMS软件iBase4J(6000行代码)
测试结果汇总
数据统计:
- SonarQube结果:
代码错误 安全隐患 风格质量 总量
有效/总量 2/6 4/4 0/93 6/103
- 源伞科技Pinpoint结果:
代码错误 安全隐患 风格质量 总量
有效/总量 2/2 19/19 6/7 27/28
有效报告:我们定义有效报告为真实影响程序执行并值得进一步检查修复的问题报告。
测试细节:
- 数量:
从数量看,Pinpoint结果确实明显少于SonarQube。但是有效报告明显少于Pinpoint.
2. 安全隐患:
从质量看,首先Pinpoint可以找到很多SonarQube无法发现的Vulnerability,也就是安全隐患(19比4),其中SonarQube找到的4个有效报告Pinpoint也能找到,Pinpoint找到15个SonarQube没有找到的问题。
SonarQube的3个报告属于同一类别,是在exception.printStackTrace()调用的时候,最好打log,不要直接打到屏幕上(这个被SonarQube归类为安全问题), Pinpoint会提示这里会有stack trace信息泄露问题。如下