You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure DevOps流水线中排除Refit.dll,提升测试项目代码覆盖率

排除Refit.dll代码覆盖率统计的解决方案

针对你的.NET 6自动化测试项目(Selenium+NUnit)在Azure DevOps流水线中无法排除Refit.dll代码覆盖率的问题,提供以下几种可行方案:

方法1:通过Coverlet命令行参数直接排除

如果流水线使用Coverlet生成覆盖率报告,在dotnet test命令中添加专属排除参数:

  • 核心参数:-- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Exclude="[Refit]*"
  • 完整命令示例:
dotnet test YourTestProject.csproj --configuration Release --collect:"XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Exclude="[Refit]*"

说明:[Refit]*会匹配Refit命名空间下的所有代码,覆盖其dll内的全部内容。

方法2:使用.runsettings配置文件全局控制

通过项目配置文件统一管理覆盖率规则,避免命令行参数遗漏:

  1. 在项目根目录创建/编辑CodeCoverage.runsettings文件,写入以下内容:
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="XPlat Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
        <Configuration>
          <Exclude>[Refit]*</Exclude>
          <!-- 可添加其他需要排除的项,比如之前的NUnit3.TestAdapter.dll:<Exclude>[NUnit3.TestAdapter]*</Exclude> -->
        </Configuration>
      </DataCollector>
    </DataCollectors>
  </DataCollectionRunSettings>
</RunSettings>
  1. 在Azure DevOps流水线的测试任务中,指定该配置文件:
    • 若用可视化任务,在Run settings file字段填入CodeCoverage.runsettings
    • 若用命令行,在dotnet test后追加--settings CodeCoverage.runsettings

方法3:检查Azure DevOps覆盖率发布任务的过滤规则

如果是在Publish Code Coverage Results任务中出现统计异常,需确认:

  • 任务的Summary file路径指向正确的覆盖率报告文件
  • 在Additional options中添加排除规则,比如针对JaCoCo格式可使用!**/Refit.dll

关键排查点

  • 确认Refit的命名空间是否为Refit,若存在嵌套命名空间,改用[Refit.*]*匹配所有子项
  • 查看流水线执行日志,验证排除参数是否被正确传递到测试命令中
  • 先在本地执行dotnet test命令,确认本地覆盖率报告已排除Refit.dll后,再同步流水线配置

内容的提问来源于stack exchange,提问作者Vegeta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 13:34:53