Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为每个测试夹具定义相同的设置和拆卸_C#_Nunit - Fatal编程技术网

C# 为每个测试夹具定义相同的设置和拆卸

C# 为每个测试夹具定义相同的设置和拆卸,c#,nunit,C#,Nunit,我有一个包含多个TestFixture的项目,我想为每个测试定义相同的[SetUp][TearDown]方法。考虑到我有很多TestFixture,我希望避免编辑所有文件来添加这两条指令 浏览nunit文档时,我认为[SetUpFixture]是一个完美的解决方案。 所以我复制了并试图运行它,但我的TearDown方法似乎从未运行过,而安装程序正在按照我的预期执行。为了证明这一点,我只使用了throw语句 我的问题是: 我的用例有错吗?我应该用不同的方式来实现我的目标吗 我是否错误地使用了Set

我有一个包含多个TestFixture的项目,我想为每个测试定义相同的[SetUp][TearDown]方法。考虑到我有很多TestFixture,我希望避免编辑所有文件来添加这两条指令

浏览nunit文档时,我认为[SetUpFixture]是一个完美的解决方案。 所以我复制了并试图运行它,但我的TearDown方法似乎从未运行过,而安装程序正在按照我的预期执行。为了证明这一点,我只使用了throw语句

我的问题是:

  • 我的用例有错吗?我应该用不同的方式来实现我的目标吗
  • 我是否错误地使用了SetUpFixture属性
  • 下面是我的课程。我正在使用NUnit3.11

    using System;
    using NUnit.Framework;
    
    namespace MyTestProject
    {
      [SetUpFixture]
      public class MySetUpClass
      {
        [OneTimeSetUp]
        public void RunBeforeAnyTests()
        {
          StaticClass.Init();
    //    throw new InvalidOperationException("SetUp reached");
        }
    
        [OneTimeTearDown]
        public void RunAfterAnyTests()
        {
          StaticClass.Finalize();
    //    throw new InvalidOperationException("TearDown reached");
        }
      }
    }
    
  • 您的用例很好,您可以通过定义[Setup]和[Teardown]的基类来实现这一点。如果继承,则每个测试将运行一次。记录在

  • 对我来说,帮助似乎并不清楚,您对结果的解释也不清楚,但我建议您在调用StaticClass之前尝试一些断点或日志记录,以确保它们不会干扰您的行为

  • 您的用例很好,您可以通过定义[Setup]和[Teardown]的基类来实现这一点。如果继承,则每个测试将运行一次。记录在

  • 对我来说,帮助似乎并不清楚,您对结果的解释也不清楚,但我建议您在调用StaticClass之前尝试一些断点或日志记录,以确保它们不会干扰您的行为


  • 继承似乎是一种方式,而不是像我想的那样。我发现我的问题与此重复。大约2,我正在切换注释以避免任何干扰。继承似乎是一种方式,而不是像我所想的那样。我发现我的问题与此重复。大约在2点左右,我切换了评论以避免任何干扰。