当我运行 gradlew test jacocoTestReport
任务jacocoTestReport运行时,我得到一个测试报告 .
当我运行 gradlew integTest jacocoTestReport
时,跳过任务jacocoTestReport .
这是我的build.gradle的相关摘录:
apply plugin: 'jacoco'
jacocoTestReport {
group = "Reporting"
description = "Generate Jacoco coverage reports after running tests."
additionalSourceDirs = files(sourceSets.main.allJava.srcDirs)
doLast {
println 'See report at: file://' + projectDir + '/build/reports/jacoco/test/html/index.html'
}
}
test {
filter {
// only run tests ending in *UnitTest
includeTestsMatching "*UnitTest"
}
}
task integTest(type: Test) {
filter {
includeTestsMatching "*IntegTest"
}
jacoco {
destinationFile = file("$buildDir/jacoco/integTest.exec")
classDumpFile = file("$buildDir/classes")
}
}
gradle文档对我没有帮助,广泛的谷歌搜索也没有产生任何结果 .
任何想法如何让jacoco为我的整合测试做报告?
编辑:单元 - 和集成 - 测试在相同的目录中,它们的文件名区分,以防万一不清楚 .
1 回答
事实证明,这有效:
我希望这是有帮助的 :)
编辑:这需要在文件中稍后,而不是整个测试任务的定义 .
我在build.gradle的末尾有整个jacoco配置 .