Android:无法在azure devops管道上发布Jacoco代码覆盖率报告

时间:2019-07-11 05:46:08

标签: android android-gradle azure-devops code-coverage jacoco

我正在azure管道上设置android项目。我在哪里运行单元测试,并在成功执行测试用例后想要生成代码覆盖率报告。

我已经在azure-pipelines yml文件中创建了用于通过脚本运行JacocoTestReport的任务,并且还提到了生成报告所需的路径。

// This for running the jacocoTestReport
- script:
   ./gradlew jacocoTestReport

// This for publishing the code coverage result

- task: PublishCodeCoverageResults@1
     inputs:
     codeCoverageTool: 'Jacoco'
     summaryFileLocation: 
'/Users/vsts/agent/2.153.2/work/1/s/app/build/reports/jacoco/jacocoTestReport/html/index.html'

我希望该报告应在html文件中生成并发布在azure-pipeline的代码覆盖率选项卡上,但就我而言,我能够在工件文件夹中生成他的报告,但无法在代码覆盖率选项卡上看到,我完成上述任务后出现以下错误:

Reading code coverage summary from '/Users/vsts/agent/2.153.2/work/1/s/app/build/reports/jacoco/jacocoTestReport/html/index.html'
##[warning]No coverage data found. Check the build errors/warnings for more details. 

1 个答案:

答案 0 :(得分:0)

Gradle JaCoCo Plugin不仅可以生成HTML格式的报告,还可以生成XML的报告。

Azure Pipelines PublishCodeCoverageResults task的参数summaryFileLocation必须指向此XML文件而不是HTML。