gradle+sonarqube+scanner方式

1、配置build.gradle文件

apply plugin: 'jacoco'

jacoco {
   toolVersion = "0.8.5"
   reportsDir = file("$buildDir/customJacocoReportDir")
}

jacocoTestReport {
    reports {
        xml.enabled true
        csv.enabled false
        xml.destination file("${buildDir}/jacoco.xml")
        html.destination file("${buildDir}/jacocoHtml")
    }
}

check.dependsOn jacocoTestReport

2、配置sonar-project.properties文件

# Required metadata
sonar.projectKey=my:project
sonar.projectName=FlyCloud
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.modules=java-module

# Java module
java-module.sonar.projectName=Java Module
java-module.sonar.language=java
java-module.sonar.sources=./
java-module.sonar.projectBaseDir=./
sonar.binaries=classe
sonar.java.binaries=./
#sonar.binaries=./build
#java-module.sonar.exclusions=**/*.html
## 指定代码覆盖率工具
sonar.core.codeCoveragePlugin=jacoco
## 指定 exec 二进制文件存放路径(多个以逗号分隔)
#sonar.jacoco.reportPaths=module_user/build/jacoco/test.exec
## 指定 xml 文件存放路径(多个以逗号分隔)
sonar.coverage.jacoco.xmlReportPaths=module_user/build/jacoco.xml,module_news/build/jacoco.xml

3、在终端执行gradle build命令对程序进行构建。

4、在终端执行sonar-runner命令,执行完之后在sonar客户端即可看到代码的覆盖率信息。

原文地址:https://www.cnblogs.com/wangfg/p/12331679.html