10

使用 VS 10.0.40219.1,Resharper 8.2.1 我已经切换到发布版本并忘记了它。下次我尝试运行任何单元测试时,我收到错误“Resharper Unit Test Runner failed to run tests” System.BadImageFormatException: Could not load file or assembly 'HearThis, Version... 最终我发现我是在发布模式下并切换回调试,我所有的测试都运行得很好。目前,至少,我并不太担心需要在发布模式下运行我的单元测试,但很难说我永远不需要这样做。问题是为什么是不是失败了。在 TeamCity 构建服务器上,它成功地进行了发布构建并运行了测试。我知道我过去曾在发布模式下运行测试,但我只是尝试了另一个项目,它也以同样的方式失败。Resharper 的测试运行程序中是否可能存在一些新错误,或者某些内容可能已被损坏、删除,???

4

1 回答 1

20

ABadImageFormatException通常是由于与 32/64 位设置混淆所致。确保您的测试程序集与正在测试的程序集具有相同的位数。例如,如果您在 64 位机器上,并且任何程序集都需要 32 位(也许您正在 p/调用 32 位本机 dll),那么测试程序集也应该是 32 位的。

ReSharper 在外部进程中运行测试,并支持 32/64 位。它使用测试程序集的设置来决定运行哪个版本的外部进程。

于 2014-08-13T21:44:12.920 回答