Как установить собственный обработчик логов в pytest? - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть специальный форматер журналирования, который печатает журналы как json (со всеми дополнительными функциями), и я хочу использовать тот же форматер в тестах. В настоящее время pytest поддерживает только изменение строки формата, но не позволяет изменять класс форматера.

Можно ли как-то переопределить форматер в файле conftest.py?

Я пробовал это:

@pytest.fixture(scope="session", autouse=True)
def setup_logging():
    logger = logging.getLogger()
    _handler = logging.StreamHandler()
    _handler.setFormatter(JsonFormatter())
    logger.addHandler(_handler)

, который работает, но только для журналов в тестах (что хорошо), но не для журналов настройки. Также это решение довольно хакерское.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...