我试图将Visual Studio 2010 beta的dll加载到NUnit GUI中,但弹出了一个错误提示框。
此程序集是由比当前加载的运行时更新的运行时构建的,因此无法加载。您可能正在尝试加载使用比NUnit当前运行的CLR版本更高版本的CLR构建的程序集。
如何强制可执行文件在.NET 4下运行?
我试图将Visual Studio 2010 beta的dll加载到NUnit GUI中,但弹出了一个错误提示框。
此程序集是由比当前加载的运行时更新的运行时构建的,因此无法加载。您可能正在尝试加载使用比NUnit当前运行的CLR版本更高版本的CLR构建的程序集。
如何强制可执行文件在.NET 4下运行?
我已经下载了NUnit 2.5源代码,并在VS2010 beta中打开了VS2008解决方案。一旦转换完成,我打开了所有的项目,并将所有项目的目标框架设置更改为“.NET Framework 4.0”。然后我成功构建了解决方案,没有出现任何错误。现在我可以使用NUnit GUI应用程序来运行为.NET 4.0构建的测试。我没有对此版本进行全面测试,因此可能会有问题,但对于我的目的而言,它可以正常工作。
更新:无需重新构建NUnit。我发现如果你在相关的NUnit配置文件中添加以下内容,就可以运行为.NET 4.0构建的测试dll。
在<configuration>下添加:
<startup>
<supportedRuntime version="v4.0.30319" />
</startup>
并在 <runtime> 下添加:
<loadFromRemoteSources enabled="true" />
随着.NET 4的发布,我使用了
<supportedRuntime version="v4.0.30319" />
在 NUnit 2.5.4 的 exe.config 文件中,将 requiredRuntime 更改为如上所示的 loadFromRemoteResources 标签,一切都运行良好。谢谢!
你不需要修改任何文件
只需打开此文件,一切都会正常工作
C:\Program Files (x86)\NUnit 2.5.10\bin\net-2.0\nunit-x86.exe
如果您想查找Visual [C# 2010 Express或其他版本]中的.NET 4版本,请转到菜单中的“帮助”项下的Visual应用程序的“关于”选项。在窗口右上方的Microsoft .NET Framework行下,它应该显示为版本。
从 NUnit 2.5.10 开始,您可以在 GUI 运行器中启用 Visual Studio 支持:
工具-> 设置-> IDE 支持
之后,我成功地附加到 nunit-agent.exe 进程,该进程在 .NET 4.0 应用程序域中运行您的程序集。
我在运行 NUnit 2.4.8 时遇到了同样的错误信息。由于我已经有一段时间没有升级了,所以我安装了当前的 NUnit(v2.5.9),发现它现在支持 VS2010 程序集。因此,如果你最近遇到了这个错误,请检查你的 NUnit 版本:自 2010 年 12 月左右以来,唯一需要做的就是升级 NUnit。
我发现从 NUnit 应用程序 模板 开始很有用。它支持 VS C# Express,允许调试测试,并包含预编译的 .NET 4.0 NUnit。感谢作者,新的测试项目只需一键即可准备好。