py.test 2.0.1: 错误修复

欢迎使用 pytest-2.0.1,这是一个维护和错误修复版本,pytest 是一个成熟的 Python 测试工具,支持 CPython 2.4-3.2、Jython 和最新的 PyPy 解释器。请参阅此处包含经过测试的示例的详尽文档

如果您想安装或升级 pytest,只需输入以下命令之一

pip install -U pytest # or
easy_install -U pytest

非常感谢所有问题报告者以及提问或抱怨的人。特别感谢 Floris Bruynooghe 和 Ronny Pfannschmidt 的出色代码贡献以及许多其他人的反馈和帮助。

此致,holger krekel

2.0.0 和 2.0.1 之间的变化

  • 改进和统一初始捕获,使其即使在 early-loaded conftest.py 文件或插件中使用日志模块时也能正常工作。

  • 修复 issue12 - 使用 “–version” 和 “–traceconfig” 显示插件版本,并记录如何向报告测试标头添加额外信息

  • 通过要求 py>1.4.0 (1.4.1 将包含它) 修复 issue17 (python3 上的 import-* 报告问题)

  • 通过优化 py 库中的断言解释来修复 issue10 (numpy 数组真值检查)

  • 修复 issue15: 使 nose 兼容性测试与 python3 兼容 (现在 nose-1.0 支持 python3)

  • 删除有点令人惊讶的“same-conftest”检测,因为它忽略了出现在多个子目录中的 conftest.py。

  • 改进断言 (“not in”),感谢 Floris Bruynooghe

  • 改进在“python -OO”上运行时(断言和文档字符串被关闭,可能导致假阳性)的行为/警告

  • 引入 pytest_cmdline_processargs(args) 钩子以允许命令行参数的动态计算。这修复了一个回归,因为在 2.0 之前,py.test 允许从 conftest.py 文件设置命令行选项,而 pytest-2.0 到目前为止只允许从 ini 文件设置。

  • 修复 issue7: doctest 模块中的断言失败。doctest 中意想不到的失败通常会显示得更清晰,即在 doctest 失败的上下文中。

  • 修复 issue9: xfail 标记测试的 setup/teardown 函数在失败时将报告为 xfail,但在成功时将报告为正常通过 (而不是 xpassing)。这仅适用于“直接”的 setup/teardown 调用,因为 teardown_class/teardown_module 无法与单个测试紧密相关。

  • 修复 issue14: 进程退出时没有日志错误

  • 在非 tty 上“收集”输出的改进

  • 改进内部插件注册和 –traceconfig 输出

  • 引入一种从命令行阻止/注销插件的机制,请参见 https://pytest.cn/en/stable/how-to/plugins.html#cmdunregister

  • 默认激活 resultlog 插件

  • 修复了关于 yielded tests 的回归,由于 collection-before-running 语义,它们没有像 pytest 1.3.4 那样进行设置。但是请注意,推荐的更清晰的测试参数化方法仍然是“pytest_generate_tests”机制,请参阅文档。