Gradle'Jacoco'插件的'jacocoTestReport'为所有单元测试生成代码覆盖率报告 .
我应该如何创建一个gradle任务来单独生成每个单元测试的“Jacoco”代码覆盖率报告?
HelloWorld.java
HelloWorldTest.java包含Test1,Test2,Test3方法
我想为Test1,Test2,Test3方法生成单独的Jacoco代码覆盖率报告 .
在测试运行期间,Jacoco会对类进行检测并记录所调用的内容 . 然后,类型为 JacocoReport 的任务只会获取这些结果,并从中生成XML,HTML或CSV报告 .
JacocoReport
因此,要获得所需的内容,您需要添加几个执行单个测试的 Test 任务,然后添加指向不同结果文件的多个 JacocoReport 任务,然后您可以在一次运行中生成这些报告 .
Test
如果您只想手动执行此操作,我认为您可以像 gradlew test --tests HelloWorld.Test1 jacocoTestReport 一样调用Gradle .
gradlew test --tests HelloWorld.Test1 jacocoTestReport
在后一种情况下,可能还需要将 test { jacoco { append false } } 设置为不具有报告中以前运行的结果 .
test { jacoco { append false } }
1 回答
在测试运行期间,Jacoco会对类进行检测并记录所调用的内容 . 然后,类型为
JacocoReport
的任务只会获取这些结果,并从中生成XML,HTML或CSV报告 .因此,要获得所需的内容,您需要添加几个执行单个测试的
Test
任务,然后添加指向不同结果文件的多个JacocoReport
任务,然后您可以在一次运行中生成这些报告 .如果您只想手动执行此操作,我认为您可以像
gradlew test --tests HelloWorld.Test1 jacocoTestReport
一样调用Gradle .在后一种情况下,可能还需要将
test { jacoco { append false } }
设置为不具有报告中以前运行的结果 .