Visual Studio 2013代码覆盖率 – 未检测二进制文件

我正在尝试使用我编写的测试在我的代码块上运行代码覆盖。 在它工作正常但现在我得到错误:

生成空结果:没有检测到二进制文件。 确保测试已运行,所需的二进制文件已加载,具有匹配的符号文件,并且未通过自定义设置排除。 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=253731

我似乎无法弄清楚如何解决这个问题。 环顾四周,我看到很多人都试图去他们的项目根目录并删除那里的.suo(解决方案用户选项)文件,但这并没有解决我的问题。

我正在使用VS 2013 Ultimate

在这里给出100%正确答案是非常困难的,所以我只会告诉你我会做什么。

首先,使用一些hello world代码创建一个全新的解决方案和项目,并查看是否可以获得代码覆盖率。 如果它工作,那么你知道你的原始解决方案和/或项目,而不是你的VS配置有问题。

找出问题的一种方法是使用源代码控制来查找它何时停止工作。 尝试获取旧版本的代码库,并查看代码覆盖率是否适用于该版本。 如果它在该版本中有效,那么你可以不断获得不同版本的代码库,直到你找到一个它不起作用的版本。一旦你融合了2个版本,它在一个版本中运行而在另一个版本中失败,那么你将会能够检查两个版本之间的差异,找出它破坏的原因。

请尝试在测试项目中进行更改。 例如。 添加新测试或评论现有测试。 就我而言,它有所帮助。