一个 Azure 构建管道中多个测试项目的单一代码覆盖率报告

Single code coverage report for multiple test projects within one azure build pipeline

尝试为单个构建管道中的多个测试项目创建单个代码覆盖率报告 - 单个构建中的多个阶段。

- task: DotNetCoreCLI@2
      displayName: Run Test
      inputs:
        command: 'test'
        projects: |
          $(FunctionProjectBase)/$(FunctionShortName1)/*.csproj
        arguments: --configuration $(BuildConfiguration) --collect "XPlat Code coverage"

    - task: PublishCodeCoverageResults@1
      displayName: 'Publish code coverage report'
      inputs:
        codeCoverageTool: 'Cobertura'
        summaryFileLocation: $(Build.SourcesDirectory)/**/coverage.cobertura.xml

- task: DotNetCoreCLI@2
      displayName: Run Test
      inputs:
        command: 'test'
        projects: |
          $(FunctionProjectBase)/$(FunctionShortName2)/*.csproj
        arguments: --configuration $(BuildConfiguration) --collect "XPlat Code coverage"

    - task: PublishCodeCoverageResults@1
      displayName: 'Publish code coverage report'
      inputs:
        codeCoverageTool: 'Cobertura'
        summaryFileLocation: $(Build.SourcesDirectory)/**/coverage.cobertura.xml

但这不会在 "Code coverage tab" Azure DevOps 上生成代码覆盖率报告。它只生成一个可下载的文件。

But this is not generating code coverage report on "Code coverage tab" Azure DevOps. It only generates a downloadable file.

这是 Azure devops 上的 known issue。现在,我们只能下载报告,并且可以用Visual Studio打开。

Azure devops 目前仅支持下载link.coverage 文件。您看到的白页是 UI 故障。此场景仅应将下载 link 呈现到覆盖文件。

此外,此问题已在此处提交的早期建议票中提交 link:

support vstest .coverage "code coverage" build results tab

此功能请求在路线图上,相信很快就会发布,您可以投票并关注此主题以了解其最新反馈。

希望这对您有所帮助。