По сути, я хотел бы сказать MSTest выполнить немного кода перед запуском в серию тестовых прогонов, по сути, то, что я хотел бы сделать, это то же самое, что вставить какой-то код Main()
.
Причина, по которой я хотел бы это сделать, заключается в том, что я хотел бы вести журнал с помощью log4net во время выполнения тестов интеграции. Я не могу просто использовать log4net.Config.XmlConfigurator
атрибут сборки, так как к тому моменту, когда он считывает его в моей тестовой сборке, он уже вызван LoggerManager
. В документации рекомендуется явно настраивать log4net в точке входа в код - но где это в моих тестах?
Мне нужно запускать тесты в TestDriven.NET и MSTest runner.
and contains methods that are marked with the TestMethod attribute
.Для завершения это параметры «выполнить код до» для MSTest:
[AssemblyInitialize]
для запуска кода один раз для каждой сборки перед запуском любого теста в этой сборке.[ClassInitialize]
для запуска кода один раз для каждого класса перед любым тестом в классе, где определен метод.[TestInitialize]
для запуска кода перед каждым тестом в классе, где определен метод.источник
Я вижу это в заголовке MS Test.
Это будет выполняться перед тестами в одном классе.
Похоже, вы хотите что-то запустить перед всеми тестами.
В конфигурации тестового запуска также есть опция сценария установки.
источник