c# - Nunit - 测试 exe

标签 c# visual-studio-2010 nunit

我在 visual studio 中有一个包含 2 个项目的解决方案。一个普通项目和一个用于 NUnit 测试的“测试”项目。我在测试项目中有对正常项目的引用。我尝试添加测试并使用 NUnit GUI 运行它们,但我收到一条错误消息,提示它无法找到“正常”项目的“dll”(我猜想获取方法?)。问题是,“正常”项目不是类库,它是可执行文件,因此测试项目的 bin/Debug 具有 normalproject.exe 而不是 normalproject.dll。

如何让 NUnit 使用此设置?我什至会很感激指向具有此类设置的教程的链接,谷歌搜索到目前为止还没有找到任何东西。

我得到的实际错误代码是:

Achievement.Tests.Achievement.BruiserTest.CheckNameAndDescription: System.BadImageFormatException:无法加载文件或程序集“Achievement,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。试图加载格式不正确的程序。

最佳答案

我遇到了同样的问题!

解决方案: NUnit 安装时带有 x86 和 x64 二进制文件。在开始菜单中它只显示默认的 x64 程序。 由于我使用了一些 native 库,我的项目针对 x86,因此我不得不从 C:\Program Files (x86)\NUnit 2.6.3\手动启动 nunit-x86.exe bin 成功了!

关于c# - Nunit - 测试 exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12756035/

相关文章:

c# - 如何手动编辑 Visual Studio 项目的 list 以明确指定引用的程序集?

c# - NUnit 和 TestCaseAttribute,可以交叉连接参数吗?

c# - 如何在 NUnit 3 中使用 ITestEventListener?

c# - 获取文本文件中第一个字符的数量?

c# - 使用 GL.LINES 和 Unity3d 绘制一条线

c++ - 如何使用 Daffodil 将旧的 VC6 项目迁移到 VS2010

c++ - 本地禁用填充

c# - NUnit 与 .NET 4.0 而不是 .NET-1.1/.NET-2.0。我需要的 DLL 在哪里?

c# - 如何从 C# 中的列表中选择第二高的值?

c# - 如何在 C# 中将类型为 `object` 的变量转换为具有泛型类型的类?