NUnit: глобальное установочное приспособление не используется, когда настраиваемое приспособление указано в командной строке - PullRequest
6 голосов
/ 18 августа 2011

У меня есть сборка модульных тестов, использующая NUnit, которая содержит тысячи тестов в различных пространствах имен и приспособлениях.

Я хочу выполнить некоторые глобальные настройки перед выполнением любых тестов в моей сборке (настройка прослушивателей Trace). Я могу сделать это, создав [SetUpFixture] в глобальном пространстве имен.

Это прекрасно работает при запуске всех тестов, например ::10000*nunit.exe testassembly.exe

Однако, если я укажу прибор для тестирования, глобальная установка не будет запущена, например ::
nunit.exe testassembly.exe /fixture=MyTests

Как предоставить глобальную настройку, которая всегда запускается до запуска каких-либо тестов в сборке?

UPDATE:

Обратите внимание, что консольный тестовый прогон будет работать нормально, используя опцию /run, т. Е. Глобальная настройка запускается, даже когда запускается только определенный тестовый прибор. Я после решения для бегуна теста GUI.

1 Ответ

7 голосов
/ 15 июня 2012

Чарли Пул предложил альтернативу на форуме NUnit .

Рекомендуемый обходной путь - включить все настройки и демонтаж на уровне прибора, используя [TestFixtureSetup] и [TestFixtureTearDown].

Глобальная настройка и разборка могут быть достигнуты, если использовать базовый класс для тестовых приборов для совместного использования кода между приборами. Для глобальной настройки, которая должна выполняться один раз перед любым прибором, можно использовать флаг, чтобы предотвратить его многократное выполнение.

P.S. Параметр / fixture устарел в эти дни.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...