将生成的类和测试包括到Sonar + Jacoco测试覆盖率报告中

时间:2020-10-12 19:42:02

标签: gradle sonarqube jacoco

我有一个仅用1个模块就由Gradle构建的Java项目。它为大多数类和测试生成代码覆盖率报告。问题是我有一些生成的代码,classs + tests,这些代码没有显示在代码覆盖率报告中,因此无法包含在内。

我的build.gradle看起来像这样:

buildscript {
    ext {
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("no.nils:wsdl2java:0.10")
        classpath 'org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.8.1'
    }
}

plugins {
    id 'java'
    id "org.sonarqube" version "3.0"
    id 'jacoco'
}

apply plugin: 'com.github.kt3k.coveralls'


dependencies {
    compileOnly("org.sonarsource.java:sonar-java-plugin:6.8.0.23379")
}

sourceSets.main.java.srcDirs +=  'build/generated-sources/api/src/main/java'
sourceSets.test.java.srcDirs +=  'build/generated-sources/api/src/test/java'

sonarqube {
    properties {
        property "sonar.host.url", "http://localhost:9000"
        property "sonar.sources", "src/main,build/generated-sources/api/src/main/java"
        property "sonar.tests", "src/test,build/generated-sources/api/src/test"
    }
}

jacocoTestReport {

    reports {
        xml.enabled true
    }
}
test.finalizedBy jacocoTestReport

我可以在\ build \ reports \ jacoco \ test \ html \上看到类,而在build \ reports \ tests \ test \ classes上可以看到测试,但是在Sonar中却看不到。

有人知道怎么做吗?

谢谢

Sannon

0 个答案:

没有答案