unit-testing - 在 gradle 中使用 jacoco 显示测试覆盖率

标签 unit-testing gradle jacoco

我正在使用 gradle 文件来构建我的项目。在此文件中,我使用 jacoco 生成测试报告。我想要做的是修改构建文件,以便在我的测试覆盖率不是 100% 时显示一条消息。或者至少只显示测试覆盖率。这可能吗?

这是我的 build.gradle:

apply plugin: 'java'
apply plugin: 'jacoco'

sourceSets.main.java.srcDirs = ['src']
sourceSets.test.java.srcDirs = ['test']

dependencies {
    testCompile group: 'junit', name: 'junit', version: "4.+"
}

repositories {
    mavenCentral()
}

jacocoTestReport {
    doFirst {
      classDirectories = files('build/classes/main/draw')
    }
    reports {
        xml.enabled false
        csv.enabled false
        html.destination "build/reports/coverageHtml"
    }
}

task(runui, dependsOn: jar, type: JavaExec) {

    main = 'gui.Main'
    classpath = sourceSets.main.runtimeClasspath
}

defaultTasks 'clean', 'test', 'jacocoTestReport', 'runui'

最佳答案

目前 gradle jacoco 插件不支持此功能。您可以在 https://issues.gradle.org/browse/GRADLE-2783 为这个问题投票。和 https://issues.gradle.org/browse/GRADLE-2854 .作为一种解决方法,您可以在自定义任务中解析输出文件。

关于unit-testing - 在 gradle 中使用 jacoco 显示测试覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27053600/

相关文章:

Ant 和雅 cocoa : Need to set junit's fork to "true" but not property that's true

java - Jacoco 仅在我的系统上失败,并出现有关 StringUtils 的奇怪错误

.net - 如何对私有(private)方法进行单元测试?

c# - 使用 NserviceBus.Testing 如何在代码未通过消息处理程序启动时测试已发布的事件

unit-testing - 使用 Sqlite 将存储过程添加到内存数据库

grails - gradle 属性文件位于 gradle 项目中的哪里?

java - 多个项目的基本Gradle Q

c++ - 对类构造函数进行单元测试

android - doLast gradle任务未运行

jenkins - 如何让 Jenkins、Sonar 和 JaCoCo 插件在 Eclipse Tycho 插件项目(或者 Cobertura)中协同工作?