我正在Linux机器内使用VS代码的dotnet核心项目中工作。
以下博客以生成覆盖率报告:https : //www.hanselman.com/blog/AutomaticUnitTestingInNETCorePlusCodeCoverageInVisualStudioCode.aspx
如前所述,我通过了dotnet测试参数,如下所示:
dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=lcov /p:CoverletOutput=./lcov.info
并期望生成lcov.info文件,但不会。
我在这里想念什么吗?
ps:我已经包含了这个包
<PackageReference Include="coverlet.collector" Version="1.3.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
我曾经有确切的问题。Hanselman的指南从未明确地指示读者该软件包coverlet.msbuild
是必需的,以指示.NET使用/p:
语法收集代码覆盖率。coverlet.msbuild
通过在测试项目文件夹中执行以下命令,将其包含在测试项目中:
dotnet add package coverlet.msbuild
测试项目的*.csproj
文件应包含类似于以下内容的语句:
<PackageReference Include="coverlet.msbuild" Version="2.9.0"
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
使用此修复程序,当我运行与您发布的命令完全相同的命令时,VSCode的Coverage Gutters扩展程序对我来说是开箱即用的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句