完成测试运行后,nunit-console在远程PowerShell会话中挂起

时间:2014-04-08 10:24:44

标签: powershell nunit powershell-remoting nunit-console

我正在使用以下PS行运行NUnit测试:

& 'D:\tools\nunit-console.exe' D:\MyApplication.Specs.dll /run=MyApplication.MyTest /framework=net-4.5 /nothread

这条线工作正常。 之后,我在同一台PC上的远程会话中运行相同的测试,其中包含以下行:

Invoke-Command -ComputerName MyHost -ScriptBlock { & 'D:\tools\nunit-console.exe' D:\MyApplication.Specs.dll /run=MyApplication.MyTest /framework=net-4.5 /nothread } -credential MyUser

测试执行完成后,nunit-console将挂起以下输出:

NUnit-Console version 2.6.3.13283
Copyright (C) 2002-2012 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.

Runtime Environment -
   OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1
  CLR Version: 2.0.50727.5477 ( Net 3.5 )

ProcessModel: Default    DomainUsage: Single
Execution Runtime: net-4.5
Selected test(s): MyApplication.MyTest
.
Tests run: 1, Errors: 0, Failures: 0, Inconclusive: 0, Time: 6.96245315227513 seconds
  Not run: 0, Invalid: 0, Ignored: 0, Skipped: 0

我注意到任务管理器中的nunit-agent进程。如果我终止此过程,测试执行成功完成。

1 个答案:

答案 0 :(得分:1)

测试通过Remoting在单独的手动创建的ASP.NET应用程序域中运行。解决方案是在所有测试通过后卸载此app域。全局NUnit TearDown方法在这种情况下很有用:)