以下情况:
tests.dll包含一堆单位 测试
program.exe包含一些要测试的内容 类
tests.dll包含使用的测试 program.exe中的类
因此tests.dll有一个参考 在program.exe上
nunit-agent.exe加载tests.dll然后加载program.exe
- >基本上在nunit环境中program.exe就像一个dll一样使用。 '误用'一个exe作为dll是可能的,因为我刚刚编写了一个小测试应用程序,它也引用了program.exe并使用了那里定义的一些类,这运行正常......
但是在nunit中,只要加载了使用program.exe中定义的代码的测试,我就会收到BadImageFormatException
这是nunit反射机制中的一个错误,还是有原因?
THX TOBI
答案 0 :(得分:5)
如果为x86编译.exe并且您在64位操作系统上运行测试,则会发生这种情况。如果是这种情况,您可以选择使用nunit-x86.exe来运行测试。