Nunit很奇怪,在默认情况下,nunit-gui.exe运行在MTA模式下,而nunit-console.exe则运行在STA模式下。对于nunit-console来说,可以通过加入命令行参数来改变这个模式,详见NUnit官方文档。而对于nunit-gui来说,稍微麻烦一点,但是NUnit也很隐讳的给出了解决方法。如果大家装了nunit,那么在nunit/bin目录下,有这么一个dll文件-nunit.tests.dll,这时nunit自己的一个测试单元,与之对应的有一个config文件-nunit.tests.dll.config,打开nunit.tests.dll.config,大家可以看到有这么一行:
<add key="ApartmentState" value="MTA" />
这个就是nunit-gui的apartment开关所在,对于任何测试dll,可以建立对应的配置文件,然后在其中指定ApartmentState,就可以在STA和MTA之间切换。
另外,我想问一下,优快云上有没有专门的单元测试或者极限编程的版面?多谢。