系统.使用NUnit和Resharper时出现BadImageFormatException

本文关键字:BadImageFormatException Resharper 使用 NUnit 系统 | 更新日期: 2023-09-27 18:12:48

我使用Visual Studio 2010和Resharper 9.0。我用的是64位系统。我有NUnit 2.6.4

当我尝试运行任何测试时,我得到这个。这里没有测试。谁能告诉我怎么解决这个错误?

错误:

System.BadImageFormatException : Could not load file or assembly 'NUnitFirst, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.

系统.使用NUnit和Resharper时出现BadImageFormatException

这很可能是由于您的测试程序集被编译为64位,而您的生产代码需要32位,反之亦然。ReSharper的测试运行器将基于你的测试程序集(.net 4.0或4.5,32或64位,等等)启动一个托管进程。如果项目被标记为32位、64位或AnyCPU,它将启动适当的托管应用程序。

如果您的生产程序集需要64位,但您的测试程序集是32位,则启动32位测试托管应用程序,并且无法加载生产程序集,并抛出BadImageFormatException .

解决方案是更改测试组件的位位数以匹配生产组件。

如果编译为x64位则使用nunit.exe否则使用nunit-x86.exe