Visual Studio (VS)如何查看单元测试UT覆盖率
2025-02-20
197 0在 Visual Studio (VS) 中使用单元测试(UT)查看代码覆盖率,可以使用 "Code Coverage"(代码覆盖率) 工具。以下是具体的步骤:
方法 1:使用 Visual Studio Enterprise 自带的代码覆盖率工具
只有 Visual Studio Enterprise 企业版支持内置代码覆盖率分析。
查看代码覆盖率步骤:
打开解决方案,确保你的项目包含 单元测试。
运行测试
菜单栏 选择 Test(测试) → Test Explorer(测试资源管理器)。
在 Test Explorer 中,运行所有单元测试 (Run All Tests)。
查看代码覆盖率
进入 菜单栏 Test(测试) → Analyze Code Coverage(分析代码覆盖率) → All Tests(所有测试)。
这样 Visual Studio 会运行所有单元测试,并计算代码覆盖率。
查看结果
代码覆盖率报告会显示在 "Code Coverage Results"(代码覆盖率结果) 窗口中。
你可以查看哪些代码被测试覆盖,哪些代码未被覆盖。
方法 2:使用 Coverlet + ReportGenerator(推荐,适用于所有 VS 版本)
如果没有 Visual Studio Enterprise 企业版,可以使用 Coverlet + ReportGenerator。
1. 安装 Coverlet
如果你使用的是 .NET Core 或 .NET 6/7,你可以安装 Coverlet:
dotnet add package coverlet.collector
2. 运行测试并生成覆盖率报告
使用以下命令运行单元测试并生成代码覆盖率报告:
dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura
这将在 TestResults 目录中生成 coverage.cobertura.xml。
3. 生成 HTML 覆盖率报告
安装 ReportGenerator:
dotnet tool install -g dotnet-reportgenerator-globaltool
然后运行:
reportgenerator -reports:TestResults/coverage.cobertura.xml -targetdir:coveragereport
这样,你可以在 coveragereport/index.html 打开详细的 HTML 代码覆盖率报告。
方法 3:使用 Rider / Resharper 覆盖率工具
如果使用 JetBrains Rider 或者 Resharper 插件,也可以直接在 Unit Test Coverage 视图中查看测试覆盖率。
几个工具的对比
如果你使用的是 Visual Studio Community / Professional,推荐 Coverlet + ReportGenerator!
您可能感兴趣: