什么是xUnit相当于NUnit的[TestFixtureSetUp]
?
我们已经探索并发现IUseFixture<T>
相当于[TestFixtureSetUp]
,但它没有按预期工作。
正如我们已经探索过的(在NUnit的情况下),我们发现[TestFixtureSetUp]
标记的方法只能在夹具中的所有测试运行之前执行一次代码。在xUnit中,我们已经探讨了[TestFixtureSetUp]
的等效IUseFixture<T>
,但在测试期间,我们发现在每次测试之前都会调用SetFixture
的{{1}}方法(不是所有方法只有一次。)
请告诉我们如何在xUnit中实现上述目标。如果我们误解某些事情,也要纠正我们。感谢。
答案 0 :(得分:35)
XUnit中没有直接等效的[TestFixtureSetUp]
,但您可以实现类似的功能。 This page列出了NUnit和XUnit(以及其他几个C#/ .NET测试框架)之间的转换。但是,XUnit在很大程度上摆脱了设置/拆卸(this article解释了为什么做出这个决定)。相反,您需要测试套件来实现一个名为IUseFixture<T>
的接口,该接口可以为夹具初始化一些数据。
您可能还想阅读this overview of XUnit,这是从NUnit / MbUnit背景的某个角度编写的。