NUnit报错:System.ArgumentException: net-4.0框架不可用。

10

异常: 进程模型: 默认 域使用: 单一 执行运行时: net-4.0 未处理的异常: System.ArgumentException: 框架 net-4.0 不可用 参数名: framework at NUnit.Util.TestAgency.GetAgent(RuntimeFramework framework, Int32 waitTime, Boolean enableDebug) at NUnit.Util.ProcessRunner.Load(TestPackage package) at NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions options) at NUnit.ConsoleRunner.Runner.Main(String[] args)

操作系统 Winserver 2008 R2 x64

Nunit 2.5.4.10098

测试程序集 构建于 .net 4.0 RTM (v4.0.30319)

命令行 nunit-console.exe NServiceBus.Config.UnitTests.dll /framework=net-4.0

有什么想法吗?

2个回答

14

结合Kev的建议(在参数列表中添加/framework=4.0.30319)并使用以下内容修改nunit-console.exe.config:

在下面

 <configuration>

添加:

<startup>  <requiredRuntime version="v4.0.30319" /></startup>

<configuration><runtime>下添加:

 <legacyUnhandledExceptionPolicy enabled="1" />

1
搞定了,谢谢!不过还得在运行时部分添加以下内容: <loadFromRemoteSources enabled="true" /> - Andreas Öhlund

1

我在使用CC.net时遇到了同样的问题。

现在我使用参数/ framework = 4.0.30319从NAnt运行NUnit。

希望这可以帮助到你。

Kev


谢谢,这让我更进一步了,但现在我遇到了另一个错误: System.NullReferenceException: 对象引用未设置为对象的实例。 [exec] at NUnit.Util.ProcessRunner.Load(TestPackage package) [exec] at NUnit.Core.ProxyTestRunner.Load(TestPackage package) [exec] at NUnit.Util.RemoteTestAgent.AgentRunner.Load(TestPackage package) [exec] at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Ob ct server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs) 完整转储在此处:http://pastie.org/919114 - Andreas Öhlund

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接