如何清除测试方法的[忽略]缓存? (无需重新启动Visual Studio)

时间:2012-07-11 22:09:04

标签: visual-studio mstest ignore

我有一些标记为[Ignore]的测试,但是现在,我想再次运行它们,所以我删除了[Ignore]属性,但Visual Studio仍将它们视为忽略。

如何清除缓存以不再忽略测试?

更新

看起来这些数据存储在vsmdi文件中:

<TestLink ... name="MethodName" ... enabled="false" />

因此,删除vsdmi文件或以其他方式重新生成它是必要的。

但是,visual studio缓存它,所以重新启动visual studio似乎可以解决问题(至少有时候)。

4 个答案:

答案 0 :(得分:2)

您是否尝试过Clean Solution(在构建菜单中)?此外,我会尝试删除测试项目中的bin / obj文件夹。如果这不起作用,我会寻找其他(二进制)文件,这些文件可能是某种类型的缓存或与测试项目相关,只是删除它们。我无法想象很难找到这些文件而只是删除它们(确保你有备份,以防万一)。

编辑 Apparently这是.vsmdi文件 EDIT2 Apparently not:P

如果我遇到这样的问题,我甚至可能已经完成了一个文件搜索,寻找已被[忽略]的特定方法名称。确保你使用一个看起来在每个文件“内部”的工具,windows file-search忽略了文件的内容。

答案 1 :(得分:2)

我也有这个问题。

您可以手动更改.vsmdi文件或将其删除。如果再次打开测试视图(删除后),它将生成一个新文件。

此外,您选择的测试设置可能会出现同样的问题。它也会“缓存”它。

答案 2 :(得分:1)

即使这个主题已经很老了,我也想为这个问题添加我的解决方案,对于那些遇到同样问题的人来说......

我也收到了这个问题,并在.vsmdi文件中找到了解决方案。 在“测试设置”下,“单元测试”a有一个文件夹在“根文件夹中”中引用了要加载的程序集:'和复选框'使用测试目录中的程序集的加载上下文'已选中。

我取消选中该复选框,之后,我的测试确实成功运行了! (我知道'根文件夹....'中提到的文件,其中旧的程序集。 您还可以从“根文件夹...”中的文件夹中删除文件,以确保删除旧的程序集。

答案 3 :(得分:0)

我使用的是Visual Studio 2012并且没有.vsdmi文件,但遇到了问题。我能够通过删除.suo(.sln文件旁边的隐藏文件)文件并重新启动Visual Studio来解决这个问题。我知道它说没有重新启动,但提供的解决方案对我不起作用,所以我提供了一个替代方案,以防其他人遇到同样的错误。