gpt4 book ai didi

python - 在 pytest 中禁用特定记录器

转载 作者:行者123 更新时间:2023-12-01 07:35:41 24 4
gpt4 key购买 nike

在我的项目中,我使用 pdfplumber 解析一些 PDF 文件。在测试执行(pytest)期间,我有时希望查看代码中的日志以进行调试。这可以通过设置 --log-cli-level=DEBUG 来完成。然而,这会打开来自所有代码的消息,还有 pdfplumber - 这非常冗长并且使调试变得困难。有没有办法在测试运行期间有选择地启用/禁用记录器?

pytest 4.6.3
python 3.7.3

感谢您的帮助!

最佳答案

Pytest 默认情况下不支持此功能,但您可以向 conftest.py 添加自定义选项以关闭特定记录器。

import pytest
import logging

def pytest_addoption(parser):
"""Add a command line option to disable logger."""
parser.addoption(
"--log-disable", action="append", default=[], help="disable specific loggers"
)

def pytest_configure(config):
"""Disable the loggers."""
for name in config.getoption("--log-disable", default=[]):
logger = logging.getLogger(name)
logger.propagate = False

关于python - 在 pytest 中禁用特定记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57001358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com