NLog и модульное тестированиеC#

Место общения программистов C#
Ответить
Anonymous
 NLog и модульное тестирование

Сообщение Anonymous »

Я использую NLog для своего регистратора. Все работает нормально при регистрации, когда я запускаю .exe или даже отлаживаю через Visual Studio, NLog все равно будет записывать в файл.

Но если я запускаю объект, который вызывает регистратор через модульный тест, файл создается, но он пуст. Есть ли дополнительная настройка/правило, которое мне нужно добавить в конфигурацию, чтобы NLog записывал файлы в рамках модульных тестов?

Я мог бы высмеивать NLog для этого и не иметь дампов журналов , но я хотел бы посмотреть, смогу ли я заставить это работать, прежде чем я решу просто издеваться над NLog. Несмотря на то, что это происходит только в модульных тестах и ​​работает иначе, вот моя конфигурация и код для ведения журнала. Я пропустил имена файлов.

public static void Info(string app, string m) => EngineLogger.Logger.Info($"{app} : {m}");











Вот ошибка из внутреннего журнала:

Error Error has been raised. Exception: System.Runtime.InteropServices.COMException (0x800700A1): The specified path is invalid. (Exception from HRESULT: 0x800700A1)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at NLog.Internal.FileAppenders.BaseFileAppender.WindowsCreateFile(String fileName, Boolean allowFileSharedWriting)
at NLog.Internal.FileAppenders.BaseFileAppender.TryCreateFileStream(Boolean allowFileSharedWriting)
at NLog.Internal.FileAppenders.BaseFileAppender.CreateFileStream(Boolean allowFileSharedWriting)
at NLog.Internal.FileAppenders.RetryingMultiProcessFileAppender.Write(Byte[] bytes)
at NLog.Targets.FileTarget.WriteToFile(String fileName, LogEventInfo logEvent, Byte[] bytes, Boolean justData)
at NLog.Targets.FileTarget.ProcessLogEvent(LogEventInfo logEvent, String fileName, Byte[] bytesToWrite)
at NLog.Targets.FileTarget.Write(LogEventInfo logEvent)
at NLog.Targets.Target.Write(AsyncLogEventInfo logEvent)


Подробнее здесь: https://stackoverflow.com/questions/394 ... it-testing
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»