5、配置Jenkins+SonarQube实现代码质量检测

配置前提:部署好了Jenkins、SonarQube。(此处Jenkins、SonarQube是部署在同一台机器上,情况有不一样的请自行修改相关配置)


一、sonar-scanner安装

    SonarQube Scanner,作为代码扫描的工具,通过它将项目的代码读取并发送至SonarQube服务器中,才能让SonarQube进行代码分析。

    wget  https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.0.3.778-linux.zip

    unzip  sonar-scanner-cli-3.0.3.778-linux.zip

    mv  sonar-scanner-3.0.3.778-linux  /home/jenkins/sonar-scanner

    配置连接Sonarqube

    vi  /home/jenkins/sonar-scanner/conf/sonar-scanner.properties

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

    sonar.sourceEncoding=UTF-8

    如上就完成安装了

二、jenkins的集成配置

1、Jenkins安装插件(SonarQube Plugin)

2、配置让jenkins和sonar结合在一起


3、配置SonarQube Scanner


此步骤如无报错则说明正常。

4、创建Jenkins项目,并配置“源码管理”和“构建”

“源码管理”配置(此步有疑问请参考https://www.jianshu.com/p/bc9a1605a68e 的2.1)

“构建”过程配置

sonar.projectKey=test_sonar

sonar.projectName=test_sonar

sonar.projectVersion=1.0

sonar.sources=./

sonar.sourceEncoding=UTF-8

sonar.java.binaries=./

备注:Scanner会自动识别代码语言,所以此处不需要定义开发语言。



    到此SonarQube就集成到Jenkins的作业中了,最后只需要将该项目添加到CICD中。

    SonarQube一般情况下代码审查过程放置于CI之前,只需要添加到测试环境的流水化作业中即可,没必要集成到开发和正式环境中。而且需要开发人员去制定代码审查规则,否则几乎没什么用,原因是初始化审查规则不符合国情~~~,一检查会发现代码中有无数个严重BUG。代码审查规则制定完毕后,建议将该工具交由测试人员来使用,并驱动开发去优化代码。

    下图是我用java开源代码进行一下审查的结果,未定义代码规则。

你可能感兴趣的:(5、配置Jenkins+SonarQube实现代码质量检测)