【发布时间】:2021-06-30 20:38:29
【问题描述】:
我为一个课程创建了一个测试单元,它在我的本地通过了很好的测试,在 sonarqube 上它显示为 0% 的覆盖率,我找到了添加 coverlet.msbuild 的帖子建议,但仍然没有消息:
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.0" />
<PackageReference Include="coverlet.msbuild" Version="3.0.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
有什么想法吗?
【问题讨论】:
-
使用 Coverlet.MsBuild,您需要在执行测试时添加
/p:CollectCoverage=true或添加为项目文件中的属性<PropertyGroup><CollectCoverage>true</CollectCoverage></PropertyGroup>但是您还需要调整各种其他设置(例如输出格式和位置)以及一些声纳设置......所有这些都是为了让 Sonarqube 拾取并识别文件中的数据(如果您在 linux 上运行,则需要更多设置) -
你是如何收集报道的?
标签: c# visual-studio sonarqube sonarqube-scan sonar-runner