gradle - 如何在使用gradle的多模块系统中使用sonar + jacoco生成用于集成测试的代码覆盖率报告

标签 gradle spring-boot sonarqube build.gradle jacoco

假设主模块 A 和子模块是 B 和 C。在我的 gradle 文件中,我只在下面添加了 Sonar 和 jacoco 的配置。

apply plugin: 'spring-boot'
apply plugin: 'org.sonarqube'
app vly plugin: 'jacoco'

jacocoTestReport {
    group = "Reporting"
    description = "Generate Jacoco coverage reports after running tests."
    additionalSourceDirs = files(sourceSets.main.allJava.srcDirs)
}

sonarqube {
    properties {
        property "sonar.projectName", "A"
        property "sonar.projectKey", "org.codehaus.sonar:A"
        property "sonar.jacoco.reportPath", "${project.buildDir}/jacoc /test.exec"
        property "sonar.jacoco.itReportPath", "${project.buildDir}/jacoco/jacoco-it.exec"
    }
}

当我运行 gradle 任务时:./gradlew clean :A:sonarqube -Pprod 构建成功但显示以下信息

INFO - JaCoCoItSensor: JaCoCo IT report not found: /../../../../A/build/jacoco/jacoco-it.exec

集成测试运行良好。但只显示主模块的代码覆盖率。我想要的是,当我运行集成测试时,子模块代码也包含在代码覆盖率报告中。

最佳答案

您可能想看看 sonarqube gradle plugin excluding jacoco integration tests

好像没有这个属性

关于gradle - 如何在使用gradle的多模块系统中使用sonar + jacoco生成用于集成测试的代码覆盖率报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37916210/

相关文章:

sonarqube - 如何使用 SonarQube 修复 "Not inside a Git work tree"?

更新 firebase-perf 插件后无法编译 Android studio 项目(缺少类模块信息)

android - 使用同一项目创建不同的应用程序(Android Studio)

android - 我无法在 Raspberry Pi 上创建 apk

gradle - Gradle实现项目引发异常

spring-mvc - Spring Boot MVC 转换器无法 Autowiring Neo4J 数据存储库

spring - 将 Spring WebSession 与 Spring React Web Flux 集成

springSecurityFilterChain 不能为空

sonarqube - GitLab SonarQube CI/CD 变量不会传递到管道

java - 来自 Jenkins 的 Sonarqube 扫描 : ClassNotFoundException: org. eclipse.jgit.api.Git