✕
✕
SonarQube简介
SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java、C、C++、JavaScripe等等二十几种编程语言的代码质量管理与检测。
通过客户端插件分析源代码,sonar客户端可以采用IDE插件、Sonar-Scanner插件、Ant插件和Maven插件方式,并通过各种不同的分析机制对项目源代码进行分析和扫描,并把分析扫描后的结果上传到sonar的数据库,通过sonar web界面对分析结果进行管理。
SonarQube可以从七个维度检测代码质量:
(1)复杂度分布(complexity):代码复杂度过高将难以理解
(2) 重复代码(duplications):程序中包含大量复制、粘贴的代码而导致代码臃肿,sonar可以展示源码中重复严重的地方
(3) 单元测试统计(unit tests):统计并展示单元测试覆盖率,开发或测试可以清楚测试代码的覆盖情况
(4) 代码规则检查(coding rules):通过Findbugs,PMD,CheckStyle等检查代码是否符合规范
(5) 注释率(comments):若代码注释过少,特别是人员变动后,其他人接手比较难接手;若过多,又不利于阅读
(6) 潜在的Bug(potential bugs):通过Findbugs,PMD,CheckStyle等检测潜在的bug
(7) 结构与设计(architecture & design):找出循环,展示包与包、类与类之间的依赖、检查程序之间耦合度
SonarQube的架构
1.Database
2.SonarQube Server
3.SonarQube Scanner
4.Project
安装SonarQube
1.环境准备
依赖Java环境
数据库(支持SQL Server、Mysql、Oracle、PostgreSQL)
MySQL下载:https://dev.mysql.com/downloads/mysql/ (安装sonarqube6.3需要Mysql5.6以上)小编使用的是MySQL5.7.22版本
2.数据库配置
创建名称为:sonar的数据库(数据库名称可自定义,注意和/conf/sonar.properties配置中一致)
3. 部署SonarQube Server
SonarQube下载地址:https://www.sonarqube.org/downloads/
将下载的soar安装包解压,我这里解压在D盘目录下的sonar目录中
sonarqube服务中配置修改:
/conf/sonar.properties
sonar.web.host=0.0.0.0 sonar.web.port=9000
sonar.jdbc.username=username sonar.jdbc.password=password sonar.jdbc.url=jdbc:mysql://db_host:db_port/sonarqubeuseUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
#sonar.web.context=/your_prefix //非必须,若需要在访问sonarqube服务时加上统一的前缀则配置此项
配置说明:
url是数据库连接地址,username是数据库用户名,jdbc.password是数据库密码
启动服务
进入目录
D:\sonar\sonarqube-7.1\bin\windows-x86-64,点击SonarStart.bat,页面输入http://localhost:9000/,出现如下页面,说明配置成功,首次打开会比较慢,因为要初始化数据库信息,默认的登录用户名、密码都为:admin
4.部署SonarQube Scanner
SonarQube Scanner下载地址:https://docs.sonarqube.org/display/SCAN/Analyzing+Source+Code
将下载的SonarQube Scanner包解压
将解压后的bin目录路径加入到环境变量中:
......
查看全文内容,点击阅读原文
本文选自本文选自《51测试天地》第五十期
✕
✕
领取专属 10元无门槛券
私享最新 技术干货