Sonarqube使用简介(2)

SonarQube使用介绍

SonarQube 是一个开源的代码分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQube我们可以检测出项目中重复代码, 潜在bug, 代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。

sonarqube配置java扫描 sonarqube扫描规则_UI

1.SonarQube扫描方法

Jenkins中调用
通过jenkins插件调用sonarScanner或使用Maven、Gradle等内置扫描器
依据项目需要,对代码持续扫描,并将结果推送到sonarqube 进行页面展示

SonarQube Scanner
使用scanner,通过配置文件,修改项目信息,在命令行中调用scanner工具,进行扫描,并推送给sonarqube

Maven、Gradle等内置扫描器
以maven为例,需要修改maven和sonarqube配置文件,在mvn编译后,使用mvn命令,进行代码扫描,并推送给sonarqube(需要编译源代码)
(该部分后续详细介绍)

2.SonarQube web UI -项目页面

显示用户所有的项目概况,各项目质量评级,并提供条件筛选

sonarqube配置java扫描 sonarqube扫描规则_UI_02

3.SonarQube web UI –项目页面

通过在主页面选择单个项目,进入项目详情,该页面提供了当前项目最近一次扫描的结果评级,历史累计和新增问题数量,代码行数等信息

sonarqube配置java扫描 sonarqube扫描规则_推送_03


4.SonarQube web UI –问题页面

提供当前用户名下所有问题的列表,并提供条件筛选,包括问题类型,严重程度等

在当个项目中,问题页面显示单项目信息

sonarqube配置java扫描 sonarqube扫描规则_推送_04


选中单个问题,查看问题代码详情,sonarqube给出问题描述和修改意见

sonarqube配置java扫描 sonarqube扫描规则_推送_05


项目经理可以根据实际情况调整问题类型,严重程度。

打开或关闭问题,分配给指定的开发人员

添加备注

sonarqube配置java扫描 sonarqube扫描规则_代码行数_06


在被分配问题的开发人员配置接收信息后,将收到分配问题邮件,可根据链接,直接打开问题详情

sonarqube配置java扫描 sonarqube扫描规则_sonarqube配置java扫描_07


5.SonarQube web UI –安全报告页面

针对安全问题,sonarqube提供了OWASP top10和SANS top25,热点问题检查,并提供了聚合报告,提高对安全问题的重视程度

sonarqube配置java扫描 sonarqube扫描规则_代码行数_08


6.SonarQube web UI –评估页面

给出当前项目的评估概况信息,大小,可靠性,重复率,覆盖率等

sonarqube配置java扫描 sonarqube扫描规则_sonarqube配置java扫描_09


7.SonarQube web UI –代码页面

以.java文件为依据,给出各个.java文件统计信息

sonarqube配置java扫描 sonarqube扫描规则_UI_10


8.SonarQube web UI –活动页面

页面展示了每次代码扫描的基本信息和代码情况的折线图,折线图可以根据需要调整显示bugs数量,代码行数,覆盖率等信息

sonarqube配置java扫描 sonarqube扫描规则_推送_11

待续。。。