visual-studio - 代码覆盖率结果定期给出: Empty results generated

标签 visual-studio unit-testing code-coverage mstest vs-unit-testing-framework

我在VS2012中使用MSTest在几个不同的项目中遇到了一个反复出现的问题,我的代码覆盖时不时地停止工作(似乎是随机的),而是给了我:

Empty results generated: No binaries were instrumented. Make sure the tests ran, required binaries were loaded, had matching symbol files, and were not excluded through custom settings. For more information see http://go.microsoft.com/fwlink/?LinkID=253731



我已经检查了明显的(建议的内容),但似乎无法弄清楚是什么原因造成的。

这是我的运行设置文件:
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="Code Coverage"
                     uri="datacollector://Microsoft/CodeCoverage/2.0"
                     assemblyQualifiedName=" Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, 
                                             Microsoft.VisualStudio.TraceCollector, 
                                             Version=11.0.0.0, 
                                             Culture=neutral, 
                                             PublicKeyToken=b03f5f7f11d50a3a">
        <Configuration>
          <CodeCoverage>
            <ModulePaths>
              <Include>
                <ModulePath>.*\.dll$</ModulePath>
              </Include>
              <Exclude>
                <ModulePath>.*\.tests.dll</ModulePath>
              </Exclude>
            </ModulePaths>
            <Attributes>
              <Exclude>
                <Attribute>.*ExcludeFromCodeCoverageAttribute$</Attribute>
                <Attribute>.*GeneratedCodeAttribute$</Attribute>
              </Exclude>
            </Attributes>

            <UseVerifiableInstrumentation>True</UseVerifiableInstrumentation>
            <AllowLowIntegrityProcesses>True</AllowLowIntegrityProcesses>
            <CollectFromChildProcesses>True</CollectFromChildProcesses>
            <CollectAspDotNet>False</CollectAspDotNet>
          </CodeCoverage>
        </Configuration>
      </DataCollector>
    </DataCollectors>
  </DataCollectionRunSettings>
</RunSettings>

最佳答案

此链接解决了我的问题:Issue with Code Coverage in VS 2012

关闭Visual Studio 2012,找到.suo文件,将其删除(或重命名),然后重新启动。工作正常。不知道.suo文件中的哪些内容妨碍了正确的覆盖率分析。

关于visual-studio - 代码覆盖率结果定期给出: Empty results generated,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18784290/

相关文章:

node.js - 如何测试 node.js websocket 服务器?

与其他测试用例一起运行时 Django 单元测试失败

testing - 如何重写此 select 语句以保证 100% 的测试覆盖率?

mysql - 连接 MySQL 与 Visual Studio C#

c - 如何将 VSTS .lib 转换为 MinGW .a?

c# - NSubstitute:模拟方法未返回预期结果

ios - 使用 faSTLane 运行 xcov 时无法找到任何 .xccoverage 文件

node.js - 自动化测试的 NodeJS 代码覆盖率

c# - 将大量脚本作为嵌入式资源包含到项目中是一种不好的做法吗?

将字符串复制到 malloc 的字符串数组