我的一些测试需要特殊的 gradle 任务才能运行。该特殊任务设置一个环境变量并运行以该变量为条件的所有 JUnit 测试。
当我运行自定义任务然后运行 JacocoTestReport 时,报告 Jacoco HTML 未更新。
这里是自定义测试任务的代码: 构建.gradle
plugins {
id 'java'
id 'jacoco'
}
tasks.register('testAll', Test) {
environment "FILTER", "ALL"
useJUnitPlatform()
}
...
任务必须将 jacoco 中间文件保存在与测试任务相同的位置。
为此,必须将 jacoco 的目标文件更改为点
jacoco/test/exec
完整代码如下:
//build.gradle
plugins {
id 'java'
id 'jacoco'
}
tasks.register('testAll', Test) {
environment "FILTER", "ALL"
jacoco {
destinationFile = layout.buildDirectory.file('jacoco/test.exec').get().asFile
}
useJUnitPlatform()
}