nar*_*447 8 code-coverage lcov .net-core visual-studio-code coverlet
我正在 Linux 机器内使用 VS 代码开发 dotnet core 项目。
按照以下博客生成覆盖率报告: https://www.hanselman.com/blog/AutomaticUnitTestingInNETCorePlusCodeCoverageInVisualStudioCode.aspx
正如那里提到的,我传递了 dotnet 测试参数,如下所示:
dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=lcov /p:CoverletOutput=./lcov.info
Run Code Online (Sandbox Code Playgroud)
并期望生成 lcov.info 文件,但它没有。
我在这里错过了什么吗?
ps:我已经包含这个包了
<PackageReference Include="coverlet.collector" Version="1.3.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
Run Code Online (Sandbox Code Playgroud)
小智 11
我曾经遇到过确切的问题。coverlet.msbuildHanselman 的指南从未明确指示读者需要该包来指示 .NET 使用/p:语法收集代码覆盖率。coverlet.msbuild通过在测试项目文件夹中执行以下命令来包含在测试项目中:
dotnet add package coverlet.msbuild
Run Code Online (Sandbox Code Playgroud)
测试项目的*.csproj文件应包含类似于以下内容的语句:
<PackageReference Include="coverlet.msbuild" Version="2.9.0"
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
Run Code Online (Sandbox Code Playgroud)
通过此修复,当我运行与您发布的完全相同的命令时,VSCode 的 Coverage Gutters 扩展可以开箱即用。
| 归档时间: |
|
| 查看次数: |
2806 次 |
| 最近记录: |