NUnit SetupFixture似乎不适用于3.11版本

时间:2019-01-09 12:32:31

标签: c# nunit

nunit 3.11
nunit3test适配器3.12

第二个类运行没有问题,第一个说没有单元测试。另外,如果我在一个方法中有多个[TestCase]有多个测试,[OneTimeSetup]是否为每个测试运行,还是每个类/设置夹具一次?

[SetUpFixture]
public class UnitTests
{
    private string test = "not inialized";

    [OneTimeSetUp]
    public void Setup()
    {
        test = "initialized";
    }

    [OneTimeTearDown]
    public void Teardown()
    {

    }

    [TestCase]
    public void Test()
    {

        Assert.AreEqual(test, "initialized");
    }
}

[TestFixture]
public class UnitTests2
{
    private string test = "not inialized";

    [SetUp]
    public void Setup()
    {
        test = "initialized";
    }



    [TearDown]
    public void Teardown()
    {

    }

    [Test]
    public void Test()
    {

        Assert.AreEqual(test, "initialized");
    }
}

1 个答案:

答案 0 :(得分:1)

SetUpFixtures不包含测试。它们旨在对同一名称空间中的TestFixture执行一次设置。

TestFixture中的

OneTimeSetUp方法对于灯具运行一次。如果您想在每次测试之前运行某些程序,请使用SetUp方法。

SetUpFixture中的OneTimeSetUp方法对于整个名称空间运行一次。

对于所有这些内容,您可能需要考虑花一些时间来整理文档。