Visual Studio代码覆盖率未显示所有程序集

问题描述 投票:4回答:3

我的.SLN文件中有20个项目。我正在通过Test Explorer运行我的单元测试并生成代码覆盖率。只有八个项目出现在报道中(见截图)。我正在使用runsettings文件,其中我已注释掉所有<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个项目没有显示在覆盖结果中。有任何想法吗?

解决方案项目

代码覆盖率结果:

visual-studio-2012 code-coverage
3个回答
8
投票

程序集未显示,因为它们在当前测试运行期间未加载。

添加一些在每个其他程序集中使用类型的简单测试。


1
投票

<DebugType>Full</DebugType>添加到目标.csproj文件,为我工作

<PropertyGroup>
     <TargetFramework>netstandard2.0</TargetFramework>
     <DebugType>Full</DebugType>
</PropertyGroup>

0
投票

你能不能补充一下:

      <CodeCoverage>
        <ModulePaths>
          <Include>
             <!--Include all loaded .dll assemblies and .exe executables-->
            <ModulePath>.*\.dll$</ModulePath>
            <ModulePath>.*\.exe$</ModulePath>
          </Include>
        </ModulePaths>            

      </CodeCoverage>
© www.soinside.com 2019 - 2024. All rights reserved.