У меня есть сценарий, в котором я добавляю общий код, который должен вызывать каждый тестовый пример перед выполнением [TestMethod]
( Аналогично [TestInitialize]
/ [AssemblyInitialize]
).
Однако есть 3125 тестов , и мне нужно будет добавить этот [TestInitialize]
вместе с некоторым атрибутом [DeploymentItem]
во все эти классы тестов.
Я мог бы подумать об этихспособы
- Вручную изменить каждый тестовый класс, включив в него
TestInitialize
(, который не эффективен ) - Иметь Абстрактный базовый класс , которыйбудет иметь
TestInitialize
, и пусть каждый тестовый набор будет расширяться от этого базового класса.Но это снова требует изменений во всех тестовых классах 3125, чтобы расширить их от базового класса. - Я мог бы использовать
[AssemblyInitialize]
и использовать его.Они все еще нуждаются в замене около 82 сборок .У некоторых сборок уже есть [AssemblyInitialize], поэтому при вставке кода потребуется более глубокий анализ.
Мне было интересно - есть ли способ в C #, где мы можем принудительно применить каждый TestCase кперед выполнением тестов вызовите определенный метод, не касаясь всех этих файлов 3125 ?