8

我的 .SLN 文件中有 20 个项目。我正在通过测试资源管理器运行我的单元测试并生成代码覆盖率。只有八个项目出现在报道中(见截图)。我正在使用一个运行设置文件,其中我已经注释掉了所有 <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 项目清单

代码覆盖结果

在此处输入图像描述

4

3 回答 3

11

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

<PropertyGroup>
     <TargetFramework>netstandard2.0</TargetFramework>
     <DebugType>Full</DebugType>
</PropertyGroup>
于 2019-03-20T17:49:07.317 回答
10

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

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

于 2013-02-21T21:21:35.983 回答
0

你能不能也补充一下:

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

      </CodeCoverage>
于 2013-09-05T19:00:19.973 回答