答案是使用 Coverlet 可轻松收集 .NET 测试覆盖率。通过安装 coverlet.collector 包并运行 dotnet test --collect:"XPlat Code Coverage",可生成默认 coverage.json 报告;结合 coverlet.runsettings 文件可自定义输出格式(如 json、cobertura、lcov)、排除测试项及指定输出目录;生成的报告支持本地可视化分析或集成到 CI/CD 工具中,便于全面掌握代码覆盖情况。

Coverlet 是一个开源工具,用于收集 .NET 项目的单元测试代码覆盖率。它支持 MSTest、xUnit 和 NUnit 等主流测试框架,并能生成多种格式的覆盖率报告(如 JSON、Cobertura、lcov)。以下是具体使用方法。
在项目中启用 Coverlet 最简单的方式是通过 NuGet 安装其 MSBuild 集成包:
执行测试的同时启用 Coverlet 收集覆盖率:
dotnet test --collect:"XPlat Code Coverage"你可以指定覆盖率报告的格式和保存位置:
dotnet test --collect:"XPlat Code Coverage" --settings coverlet.runsettings<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="XPlat Code Coverage">
        <Configuration>
          <Format>json,cobertura,lcov</Format>
          <Exclude>[*Tests*]*</Exclude>
          <IncludeTestAssembly>false</IncludeTestAssembly>
          <OutputDirectory>./coverage/</OutputDirectory>
        </Configuration>
      </DataCollector>
    </DataCollectors>
  </DataCollectionRunSettings>
</RunSettings>生成的报告可用于本地分析或 CI 集成:
基本上就这些。只要测试项目引用了 coverlet.collector,再配合 --collect 参数,就能轻松获得覆盖率数据。关键在于合理配置 runsettings 文件以满足项目需求。
以上就是如何使用 Coverlet 收集 .NET 测试的代码覆盖率?的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号