我正在尝试升级到xUnit 2 beta(主要是因为更好的测试发现),但偶然发现了IUseFixture<>
:
public abstract class TestCaseBase : IUseFixture<SelfHostFixture>
{ /*common stuff here*/ }
public class Controller1Test : TestCaseBase {}
public class Controller2Test : TestCaseBase {}
我发现新的
IClassFixture<>
几乎是我所需要的,除了为每个后代类(Controller1Test
,Controller2Test
)创建/部署了固定装置,而不是仅仅一次。好吧,我可以将IClassFixture<SelfHostFixture>
声明从基础移至每个测试类,但是为什么我要多次设置/处置服务器? ICollectionFixture<>
对我不起作用(灯具的ctor从未被解雇)。基本上,我想要的是:
ICollectionFixture<>
根本无法工作,因为同一集合中的测试无法并行运行,对吗?)我想念什么?
最佳答案
答:使用ICollectionFixture
参见http://xunit.github.io/docs/shared-context.html