Visual studio 2012 Visual Studio代码覆盖率未显示所有程序集
我的.SLN文件中有20个项目。我正在通过测试资源管理器运行单元测试,并生成代码覆盖率。只有八个项目出现在报道中(见截图)。我使用的是一个runsettings文件,其中注释了所有标记的内容,如下所示:Visual studio 2012 Visual Studio代码覆盖率未显示所有程序集,visual-studio-2012,code-coverage,Visual Studio 2012,Code Coverage,我的.SLN文件中有20个项目。我正在通过测试资源管理器运行单元测试,并生成代码覆盖率。只有八个项目出现在报道中(见截图)。我使用的是一个runsettings文件,其中注释了所有标记的内容,如下所示: <PublicKeyTokens> <!-- Exclude Visual Studio extensions: --> <Exclude> <!--
<PublicKeyTokens>
<!-- Exclude Visual Studio extensions: -->
<Exclude>
<!--
<PublicKeyToken>^B77A5C561934E089$</PublicKeyToken>
<PublicKeyToken>^B03F5F7F11D50A3A$</PublicKeyToken>
<PublicKeyToken>^31BF3856AD364E35$</PublicKeyToken>
<PublicKeyToken>^89845DCD8080CC91$</PublicKeyToken>
<PublicKeyToken>^71E9BCE111E9429C$</PublicKeyToken>
<PublicKeyToken>^8F50407C4E9E73B6$</PublicKeyToken>
<PublicKeyToken>^E361AF139669C375$</PublicKeyToken>
-->
</Exclude>
</PublicKeyTokens>
我不明白为什么其他12个项目没有显示在覆盖率结果中。有什么想法吗
解决方案项目:
代码覆盖率结果:
程序集未显示,因为在当前测试运行期间未加载这些程序集
添加一些在每个其他程序集中使用类型的简单测试。您是否也可以添加:
<CodeCoverage>
<ModulePaths>
<Include>
<!--Include all loaded .dll assemblies and .exe executables-->
<ModulePath>.*\.dll$</ModulePath>
<ModulePath>.*\.exe$</ModulePath>
</Include>
</ModulePaths>
</CodeCoverage>
.\.dll$
.\.exe$
在target.csproj文件中添加全文
,对我来说很有用
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<DebugType>Full</DebugType>
</PropertyGroup>
netstandard2.0
满满的
在测试运行期间是否加载过其他项目的程序集?如果不是的话,那也许可以解释为什么他们没有出现。不,我认为他们没有。最简单的方法是什么?写一个至少涵盖一个类的测试?如果你提交一个答案,我可能会将其标记为接受。如果VS Enterprise 2017存在此问题,这将解决它。谢谢,谢谢,谢谢-这刚刚使用DotCover(Resharper)解决了我的VS Pro 2019问题-我的一个项目拒绝出现在我的覆盖报告中!!