跳至主要内容

py.test插件,用于捕获logbook日志消息

项目描述

在测试运行期间捕获和显示logbook日志输出。

pytest插件将捕获由logbook发出的日志消息,并在测试失败时在测试报告中的单独部分显示它们。此外,它提供了一个固定装置,提供在测试期间发出的日志记录的便捷访问,允许对发出的日志消息进行断言。该插件还设置了从stdlib到logbook的日志重定向,因此使用stdlib日志的任何库也将被捕获。

安装

使用pip安装

pip install pytest-logbook

日志捕获

一旦安装,日志捕获就会自动发生,包括stdlib日志重定向

def test_foo():
    logbook.info('hello')
    logging.info('world')
    assert 0
$ py.test test_foo.py
=========================== test session starts ============================
platform linux -- Python 3.4.3, pytest-2.8.2, py-1.4.30, pluggy-0.3.1
rootdir: /home/flub/Abilisoft/repos/pytest-logbook, inifile:
plugins: logbook-0.1.0
collected 1 items

test_foo.py F

================================= FAILURES =================================
_________________________________ test_foo _________________________________

    def test_foo():
        logbook.info('hello')
        logging.info('world')
>       assert 0
E       assert 0

test_foo.py:7: AssertionError
--------------------------- Logbook call records ---------------------------
[INFO] Generic: hello
[INFO] root: world
========================= 1 failed in 0.01 seconds =========================

测试设置和拆卸期间发出的日志消息也会单独捕获。如果设置失败,您将在“Logbook设置记录”部分看到它们,如果拆卸失败,您将在“Logbook拆卸记录”部分看到拆卸日志消息。

固定装置

提供了几个固定装置以访问捕获的日志记录。

loghandler

访问测试运行期间活动的logbook.TestHandler实例。您可以使用它来检查发出的日志记录,有关如何使用此对象的具体信息,请参阅完整文档。此处仅记录实际测试期间发出的日志记录,测试设置或拆卸期间发出的记录记录在其他固定装置中。

loghandler_setup

访问测试设置期间活动的logbook.TestHandler实例。

loghandler_teardown

访问测试拆卸期间活动的logbook.TestHandler实例。

配置

该插件可以使用标准 [pytest] 部分中的配置文件中的选项进行配置,请参阅py.test 配置文件

logbook_stdlib

此配置项用于决定是否将 stdlib 日志重定向到 logbook。设置为 true(默认)或 false

变更日志

1.2.0

  • 重构内部工作流程,以改善键盘中断和内部 py.test 错误时的行为。由于是次要回归,并且为了保持简单,现在仅在测试设置、调用或清理阶段捕获日志记录,而在 conftest 加载或测试收集期间不捕获。这并不是固有的限制,只是避免不必要的功能。

  • 修复在测试方法中使用 fixture 而不是仅在测试函数中使用的问题。

1.1.0

  • 如果应用程序损坏了 Logbook 栈,则不失败。

1.0.3

  • 需要 Logbook 0.11.3 以获取 logging.compat 模块。

1.0.2

  • 包含 LICENSE

  • 在发行版中包含 MANIFEST.in、LICENSE、tox.ini 和测试模块。

  • 开始维护变更日志。

  • 由于钩子的实现方式,修复依赖项以要求 py.test >= 2.8。

1.0.1

  • 不构建通用轮。仅在 python3 上进行测试和支持。

1.0.1

  • 初始发布。

项目详细信息


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

pytest-logbook-1.2.0.tar.gz (6.0 kB 查看哈希值

上传时间 源代码

构建分布

pytest_logbook-1.2.0-py3-none-any.whl (7.4 kB 查看哈希值

上传时间 Python 3

由以下机构支持