Nunit,C#:Test Fixture Teardown Nunit 的执行顺序

Nunit , C# : Order of execution of Test Fixture Teardown Nunit

我有一个测试夹具 class ABC,它继承自 Base Class,名称为 BaseTest。 BaseTest 和 ABC 都定义了测试夹具拆解和测试夹具设置。

我想知道先执行哪个 TestFixtureSetUp 和 TestFixtureTearDown。 请看下面的代码:

public class BaseTest 
{
  [TestFixtureSetup]
  public void BaseSetup()
  {
  }

  [TestFixtureTearDown]
  public void BaseTearDown()
  {
  }
}

 public class ABC : BaseTest
{
  [TestFixtureSetup]
  public void Setup()
  {
  }

  [TestFixtureTearDown]
  public void TearDown()
  {
  }
}

What i want to know is whether BaseTearDown gets executed first or TearDown?

这种情况下的执行顺序是由NUnit严格定义的。

Base class TestFixtureSetUp 将始终首先执行,派生的 class TestFixtureSetUp。 TestFixtureTearDown 方法以相反的顺序执行:derived class 首先是 bsse class.

请注意,TestFixtureSetUp 和 TestFixtureTearDown 用于较早版本的 NUnit。在更新的版本中,改用 OneTimeSetUp 和 OneTimeTearDown。执行顺序保持不变。