У меня есть проект Visual Studio unit test для тестирования проекта ASP.NET MVC.
Добавление атрибута уровня сборки log4net.Config.XmlConfigurator
в AssemblyInfo.cs не работает, и другие люди из SO обнаружили, что им нужно использовать прямой вызов log4net.Config.XmlConfigurator.Configure();
Вопрос в том, как это можно сделать для unit test? Ответ на использование атрибута Microsoft.VisualStudio.TestTools.UnitTesting.AssemblyInitialize
для метода класса не работает.
Для меня этот код приводит к тому, что InvalidOperationException
регистрируется в окне вывода, а тестовый сеанс бомбит раньше.
[TestClass]
public sealed class Startup
{
[AssemblyInitialize]
public void Configure()
{
System.Diagnostics.Debug.Write("Microsoft.VisualStudio.TestTools.UnitTesting.AssemblyInitialize");
}
}
Считывая документацию, MSDN заявляет, что не следует использовать AssemblyInitialize
для тестовых проектов для ASP.NET, поскольку они могут быть вызваны более одного раза.
Итак, как это сделать, чтобы log4net был настроен до запуска любых тестов?