nunit加载exe的问题

发布于 2024-09-18 01:16:07 字数 506 浏览 5 评论 0原文

以下情况:

  • 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中,一旦加载测试,我就会得到一个BadImageFormatException使用program.exe中定义的代码

这是nunit反射机制中的一个错误还是有原因?

谢谢 托比

following situation:

  • tests.dll contains a bunch of unit
    tests

  • program.exe contains some to be tested
    classes

  • tests.dll contains tests using the
    classes in program.exe

  • therefore tests.dll has a reference
    on program.exe

  • nunit-agent.exe loads tests.dll and this then loads program.exe

--> basically in the nunit environment program.exe is used like a dll.
'misusing' an exe as dll is possible as i just wrote a little test application that also references program.exe and uses some classes defined in there and this runs fine ...

BUT in nunit i get a BadImageFormatException as soon as tests are loaded that use code defined in program.exe

is this a bug in nunit's reflection mechanism or is there a reason for that?

thx
tobi

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夏花。依旧 2024-09-25 01:16:07

如果 .exe 是针对 x86 编译的并且您在 64 位操作系统上运行测试,则可能会发生这种情况。如果是这种情况,您可以选择使用 nunit-x86.exe 来运行测试。

This can happen if the .exe is compiled for x86 and you are running the tests on a 64 bit OS. If this is the case you may choose to use nunit-x86.exe for running the tests.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文