2014-10-15 7 views
1

Я ищу ближайший эквивалент использования атрибута MbUnit [AssemblyFixture] в NUnit. Я хочу, чтобы мои модульные тесты запускали некоторую настройку только один раз (всего) перед всеми устройствами пространства имен и запускать некоторую очистку один раз (всего) после всех приборов пространства имен. Спасибо.Ищете эквивалент NUnit для MbUnit [AssemblyFixture]

ответ

1

Ближайшая вещь, о которой я знаю в NUnit, - [SetUpFixture]. NUnit documentation на [SetUpFixture] объясняет:

Это атрибут, который знаменует собой класс, содержащий одноразовый установки или Teardown методы для всех испытательных приборов при заданном пространства имен. Класс может содержать не более одного метода, отмеченного атрибутом SetUpAttute , и один метод, отмеченный атрибутом TearDownAttribute.

Кроме того, в нем говорится:

только один SetUpFixture должен быть создан в заданном пространстве имен. A SetUpFixture вне любого пространства имен предоставляет SetUp и TearDown для всю сборку.

Относительно [SetUp] и [TearDown] методов внутри [SetUpFixture]:

Метод SetUp в SetUpFixture выполняется один раз, прежде чем любой из светильников, содержащихся в пространстве имен. Метод TearDown выполняется после завершения всех завершенных работ.

Это пример из NUnit 2.6.3 documentation (хотя она была добавлена ​​в версии 2.4):

namespace NUnit.Tests 
{ 
    using System; 
    using NUnit.Framework; 

    [SetUpFixture] 
    public class MySetUpClass 
    { 
    [SetUp] 
    RunBeforeAnyTests() 
    { 
     // ... 
    } 

    [TearDown] 
    RunAfterAnyTests() 
    { 
     // ... 
    } 
    } 
} 
+0

Спасибо, но вы не думаете, установка и демонтаж будете побежали во много раз? (Один раз за светильник)? С помощью [AssemblyFixture] настройка и отключение запускаются один раз в пространстве имен. – evg02gsa3

+0

'[SetUp]' и '[TearDown]' будут запускаться один раз в пространстве имен. Я обновлю свой ответ, чтобы это отразить. –

 Смежные вопросы

  • Нет связанных вопросов^_^