运行测试时不调用 C# 中的 nUnit SetupFixture 类



nUnit SetupFixture Reference

我的解决方案是这样设置的,使用 SpecFlow Gherkin 功能
溶液
- 测试项目
--特征
--步骤
- 页面项目
--页面

我使用如下命令运行 nUnit 测试运行器:

"C:Program Files (x86)NUnit.orgnunit-consolenunit3-console.exe" ".binDevSolution.dll"

我已将此代码添加到上面项目结构的步骤文件夹中。

using System;
using NUnit.Framework;
namespace TestsProject.StepDefinitions
{
    /// <summary>
    /// This class needs to be in the same namespace as the StepDefinitions
    /// see: https://www.nunit.org/index.php?p=setupFixture&r=2.4.8
    /// </summary>
    [SetUpFixture]
    public class NUnitSetupFixture
    {
        [SetUp]
        public void RunBeforeAnyTests()
        {
            // this is not working
            throw new Exception("This is never-ever being called.");
        }
        [TearDown]
        public void RunAfterAnyTests()
        {
        }
    }
}

我做错了什么? 为什么在 nUnit 开始所有测试之前不调用[SetupFixture]

使用SetUpFixtureOneTimeSetUpOneTimeTearDown属性,因为您使用的是 NUnit 3.0 而不是此处详述的SetUpTearDown属性。

using System;
using NUnit.Framework;
namespace TestsProject.StepDefinitions
{
    [SetUpFixture]
    public class NUnitSetupFixture
    {
        [OneTimeSetUp]
        public void RunBeforeAnyTests()
        {
            //throw new Exception("This is called.");
        }
        [OneTimeTearDown]
        public void RunAfterAnyTests()
        {
        }
    }
}

相关内容

  • 没有找到相关文章

最新更新