运行jacocoReport
我正在使用gradle 1.7和jacoco插件。 我的项目使用java和scala插件
当我运行gradlew -i clean jacocoTestReport时
报告未创建,我在日志中看到
:bl:jacocoTestReport (Thread[Daemon Thread 13,5,main] - start :bl:jacocoTestReport Skipping task ':bl:jacocoTestReport' as task onlyIf is false. :bl:jacocoTestReport SKIPPED :bl:jacocoTestReport (Thread[Daemon Thread 13,5,main]) - complete
这是什么意思? 为什么不创建报告?
只有覆盖数据可用时,该任务才会运行。 您还可以通过运行test
任务来确保这一点。
将以下内容添加到build.gradle的顶层:
test { finalizedBy jacocoTestReport }
这意味着在测试任务结束时应运行jacocoTestReport任务。 运行测试后,您将收到覆盖率分析。
以上都不适合我。 对我有用的是以下内容
添加到我的build.gradle的顶部:
apply plugin: 'jacoco' // code coverage reports
将以下内容添加为“任务”:
// Generate code coverage reports ... run with jacoco jacocoTestReport{ additionalSourceDirs = files(sourceSets.main.allJava.srcDirs) reports { xml.enabled false csv.enabled false html.destination "${buildDir}/reports/jacoco/html" } executionData = files('build/jacoco/test.exec') }
将以下内容添加到您的gradle测试任务中:
finalizedBy jacocoTestReport
然后我发出以下命令:
gradle run test jacoco