xUnit框架:XUnit中NUnit的[TestFixtureSetUp]的等价物?

时间:2011-06-28 15:52:57

标签: nunit xunit

什么是xUnit相当于NUnit的[TestFixtureSetUp]

我们已经探索并发现IUseFixture<T>相当于[TestFixtureSetUp],但它没有按预期工作。

正如我们已经探索过的(在NUnit的情况下),我们发现[TestFixtureSetUp]标记的方法只能在夹具中的所有测试运行之前执行一次代码。在xUnit中,我们已经探讨了[TestFixtureSetUp]的等效IUseFixture<T>,但在测试期间,我们发现在每次测试之前都会调用SetFixture的{​​{1}}方法(不是所有方法只有一次。)

请告诉我们如何在xUnit中实现上述目标。如果我们误解某些事情,也要纠正我们。感谢。

1 个答案:

答案 0 :(得分:35)

XUnit中没有直接等效的[TestFixtureSetUp],但您可以实现类似的功能。 This page列出了NUnit和XUnit(以及其他几个C#/ .NET测试框架)之间的转换。但是,XUnit在很大程度上摆脱了设置/拆卸(this article解释了为什么做出这个决定)。相反,您需要测试套件来实现一个名为IUseFixture<T>的接口,该接口可以为夹具初始化一些数据。

您可能还想阅读this overview of XUnit,这是从NUnit / MbUnit背景的某个角度编写的。