Платформа xUnit: эквивалент [TestFixtureSetUp] NUnit в XUnit? - PullRequest
26 голосов
/ 28 июня 2011

Что является эквивалентом xUnit [TestFixtureSetUp]?

Мы исследовали и обнаружили, что IUseFixture<T> является эквивалентом [TestFixtureSetUp], но он не работает, как ожидалось.

Как мы уже исследовали (в случае NUnit), мы обнаружили, что [TestFixtureSetUp] помечал методы для кода, который должен быть выполнен только один раз, прежде чем будет выполнен весь тест в приборе.В xUnit эквивалент [TestFixtureSetUp] равен IUseFixture<T>, как мы исследовали, но во время тестирования мы обнаружили, что SetFixture метод IUseFixture вызывается перед каждым тестом (не только один раз для всех методов).

Пожалуйста, дайте нам знать, как мы можем достичь вышеизложенного в xUnit.Также исправьте нас, если мы что-то неправильно понимаем.Спасибо.

1 Ответ

36 голосов
/ 29 июня 2011

В XUnit нет прямого эквивалента [TestFixtureSetUp], но вы можете добиться аналогичной функциональности. На этой странице представлен перевод между NUnit и XUnit (а также парой других тестовых сред C # /. NET).Тем не менее, XUnit в значительной степени избавился от настроек / разрывов ( эта статья объясняет, почему было принято это решение).Вместо этого вам понадобится набор тестов для реализации интерфейса под названием IUseFixture<T>, который может инициализировать некоторые данные для прибора.

Возможно, вы также захотите прочитать этот обзор XUnit , написанный изв перспективе кто-нибудь из фона NUnit / MbUnit.

...