与此问题类似,我升级到 NUnit 2.6 版,并开始收到线程错误。
不支持 STA 线程上的多个句柄的 WaitAll
测试在 NUnit GUI 下运行良好,但在控制台版本上失败。
我猜新的 NUnit 控制台版本一定是从多线程单元模型切换到了单线程。无论如何,有一个命令行开关可以将其设置回 MTA。这是我的 NAnt 构建脚本中的相关部分。
<exec program="nunit-console.exe" if="${nunit-in-path}">
<arg file="../ZaberConsole/ZaberConsoleTest.nunit"/>
<arg value="/apartment=MTA"/>
</exec>
或者尝试在程序集上设置RequiresMTA属性。这对我有用。