sonarQube 代码检查搭建&使用

一、代码扫描说明

1. SonarQube Scanner 下载

Windows 64 bit  点击下载扫描工具: http://170.106.148.50/html/doc/sonar-scanner/sonar-scanner.zip

Mac OS X 64 bit 点击下载扫描工具: http://170.106.148.50/html/doc/sonar-scanner/sonar-scanner-macosx.zip

2. 解压到目录

Win 解压到 D:\  ( 依个人习惯 )

Mac 解压到 /Users/chuangjisoft02 ( 依个人习惯 )

3. 修改 sonar-scanner.properties

修改为 sonarQube 平台地址 ( 默认已修改为 http://172.18.5.64:9000 可跳过此步 )

位于 sonar-scanner\conf\sonar-scanner.properties

sonar.host.url = http://172.18.5.64:9000

Win

Mac

4. 打开要检查的项目目录

①打开项目目录, 创建文件 sonar-project.properties

sonar-project.properties 文件下载

②编辑 sonar-project.properties, 修改 sonar.projectKey 和 sonar.projectName 为项目名
sonar.sources 为检查的代码路径, 指定文件或”./”检查当前文件夹下
sonar.sources=www/js,www/html 可用 “,” 分隔指定多个路径

Mac

5. 执行扫描

①运行CMD

Win

可使用 win键+R 快捷键打开”运行”, 输入 “cmd”, 并使用cd 命令进入到待检查项目目录下
或 在待检查项目目录下 按住 左Shift键 + 鼠标右键, 选择“在此处打开命令窗口(W)”

Mac

②执行检查命令

Win

D:\sonar-scanner\bin\sonar-scanner


执行命令完成返回报告结果

Mac

/Users/chuangjisoft02/sonar-scanner-macosx/bin/sonar-scanner


执行命令完成返回报告结果

6. 查看检查报告

打开上步返回的报告链接: http://172.18.5.64:9000/dashboard/index/workflow2

或 直接访问 http://172.18.5.64:9000 根据项目名 查找

 

二、sonarQube 平台简要说明

1. 项目总览

打开项目检查报告, 总览为项目整体情况。

质量阀:是一系列对项目指标进行度量的条件。项目必须达到所有条件才能算整体上通过了质量阈。

点击导航栏中的 “质量阀” 按钮,可查看或更改质量阀的标准

2. Bugs&漏洞

选择Bug是以Bug作为评判的指标,右侧显示有Bug的Java类,详情可以查看sonar对这个Bug的解释。

查看某一个Bug的详细信息, 及给出的示例代码

3. 坏味道

是指在代码之中潜在问题的警示信号。

并非所有的坏味道所指示的确实是问题,但是对于大多数坏味道,均很有必要加以查看,并作出相应的修改。

4. 债务

每一个问题,sonar都会计算出更改这个问题需要花费的时间。

通过增加这些时间得出一个总的值称为债务。

5. 重复率

进入重复页面可查看每个Java类重复比例与重复行

进入Java类中,黑灰条代表重复的代码, 红色条代表单元测试未覆盖。

点击重复条可以查看与此类含有相同代码的Java类。

6. 代码别查看

选项卡选择代码

进入某Java类后可以通过代码右上方的“更多操作”的“显示详情”来查看指标信息。

 

以下为管理员配置说明

三、sonarQube 平台搭建及规则

1. 准备工作

1. JDK 1.8+ (自行安装)

2. Mysql 5.6+ (自行安装)

3. sonarqube 平台

下载最新社区版: https://www.sonarqube.org/downloads/

2. 安装配置

以下操作均在windows下, 使用 winscp 工具操作:https://winscp.net

①解压 sonarqube-7.2.zip 到 /usr/local

②修改 sonarqube-7.2 文件夹权限, 右键点击文件夹”属性”, 全部勾选后”确定”

③打开目录 /usr/local/sonarqube-7.2/conf, 编辑 sonar.properties, 替换内容

注: mysql 版本需大于5.6

sonar.jdbc.url=jdbc:mysql://172.18.5.64:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=你的数据库账号
sonar.jdbc.password=你的数据库密码
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

3. 启动&初始化

①打开目录 /usr/local/sonarqube-7.2/bin, 查看系统启动脚本路径

②本例操作系统为 centos 32位, 所以选择 linux-x86-32

③打开命令控制台, 如图

③执行命令 
启动命令: ./sonar.sh start
重启命令: ./sonar.sh restart
停止命令: ./sonar.sh stop

4. 平台初始化配置

启动后立即访问因为要初始化数据库, 请耐心等待…

打开平台 http://172.18.5.61:9000/sessions/new 默认账号: admin 认密码: admin

选择跳过

安装中文语音包(日文同理, 平台语音跟随浏览器语言设置)

重启服务生效插件

重新登录查看效果, 汉化完成

5. 插件&第三方插件安装

1. 市场内插件安装, 安装同上述语言插件

默认未安装 .html 插件, 建议安装, 搜索 web

2. 第三方插件安装

①使用 winscp 打开 sonarqube 安装目录 /usr/local/sonarqube-7.2/extensions/plugins

②将第三方插件放置到上述目录

css检查插件
http://170.106.148.50/html/doc/sonar-scanner/sonar-css-plugin-4.18.jar
C#检查插件 默认安装的C#插件存在Bug, 请卸载后安装此版本
http://170.106.148.50/html/doc/sonar-scanner/sonar-csharp-plugin-5.10.0.1343.jar
本例直接在此目录删除了默认C# 插件jar包, 并放入5.10版本

③重启服务使插件生效, 打开 平台 http://172.18.5.61:9000/admin/system

④查看安装的插件

6. 代码规则配置

①登录管理员账号, 选择”质量配置” => “创建”

②选择检测的语言, 创建规则集

③选择已存在的规则到规则集

④选择已存在的规则到规则集, 活动 / 挂起

⑤创建的规则集设置为默认检测配置

⑥当前规则使用情况查看

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注