控制 Azure DevOps 中的代码覆盖附件

问题描述 投票:0回答:1

在一个多阶段,yaml配置的CI管道中,通过矩阵策略在Windows和Linux中构建,我正在生成。

  • A .cobertura.xml 文件,用于在Linux操作系统中生成汇总报告,通过 报告生成器 可从 AzureDevops 中的覆盖选项卡访问。我明确地使用了 PublishCodeCoverageResults 在这个操作系统中。

  • A .coverage 文件,用覆盖率数据喂养SonarCloud。我没有使用 PublishCodeCoverageResults 在这个操作系统中。

我的问题是 .coverage 文件会覆盖覆盖选项卡中的预期报告,让我下载而不是看到报告。我怎样才能避免这种情况?有什么方法可以摆脱该附件以正确显示报告?


如果我不运行Windows部分,报告是 果然.

如果我这样做,我得到 这个 而不是报告。

我试过删除 .coverage 文件,但覆盖率选项卡中的 "附件 "却留在那里。

azure-devops code-coverage azure-pipelines
1个回答
0
投票

据我所知,你希望有下载可行,而不是像这样显示代码覆盖率。

Code covereage view

但是你的代码覆盖率也是可以作为一个人工制品的:

An artidact to download for Azure DevOps

所以你仍然可以下载它

Artifact details

这对你有什么帮助吗?


0
投票

已回答 此处:

这不是一个bug,行为是设计好的,因为.coveragereport优先于其他报告。

我的建议是停止将测试运行作为windows中dotnet任务的一部分发布。有一个选项可以这样做。

复制trx和覆盖率文件到不同的位置。使用发布测试结果任务上传trx文件,但要确保coverage文件不能用于这次发布。

© www.soinside.com 2019 - 2024. All rights reserved.