2关于nUnit的问题

Nig*_*ker 1 nunit unit-testing

我有2个关于nunit功能的问题.

[TestFixtureSetUp]和[SetUp]属性有什么区别?

我正在编写一个带有测试的类,我看到我的一半测试函数需要一个设置,另一半需要另一个设置.如何在一个类中使用不同的函数调用两个不同的SetUp函数

谢谢.

Yau*_*kha 7

标有[TestFixtureSetUp]属性的方法将在当前测试套件中的所有测试之前执行一次,并且在每次测试之前将执行标有[SetUp]属性的方法.

对于包含测试的类,其中包含需要不同设置函数的测试.只需将此类拆分为两个 - 每个类都有自己的SetUp函数.

    [TestFixture]
    public void TestSuite1
    {
      [SetUp]
      public void SetUp1()
      {
        ...
      }

      [Test]
      public void Test1()
      {
        ...
      }
    }

   [TestFixture]
    public void TestSuite2
    {
      [SetUp]
      public void SetUp2()
      {
        ...
      }

      [Test]
      public void Test2()
      {
        ...
      }
    }
Run Code Online (Sandbox Code Playgroud)

或显式调用SetUp函数

    [TestFixture]
    public void TestSuite
    {

      public void SetUp1()
      {
        ...
      }

      public void SetUp2()
      {
        ...
      }

      [Test]
      public void Test1()
      {
        SetUp1();

        ...
      }

      [Test]
      public void Test2()
      {
        SetUp2();

        ...
      }
    }
Run Code Online (Sandbox Code Playgroud)