Я пытаюсь написать простой unit test, который будет проверять, что при определенном условии класс в моем приложении будет регистрировать ошибку с помощью стандартного API протоколирования. Я не могу понять, какой самый чистый способ проверить эту ситуацию.
Я знаю, что нос уже фиксирует вывод журнала через его плагин регистрации, но это, похоже, предназначено как средство отладки и отладки для неудачных тестов.
Два способа сделать это я вижу:
- Откажитесь от модуля регистрации, либо по частям (mymodule.logging = mockloggingmodule), либо с помощью соответствующей насмешливой библиотеки.
- Запишите или используйте существующий плагин для носа, чтобы захватить вывод и проверить его.
Если я пойду на прежний подход, я хотел бы знать, какой самый чистый путь к reset глобальному состоянию к тому, что было до того, как я высмеял модуль протоколирования.
С нетерпением ждем ваших намеков и советов по этому...