pytest-2.3.5:错误修复和小改进¶
pytest-2.3.5 是一个维护版本,包含许多错误修复和一些小改进。有关详细信息,请参阅下面的更改日志。预计不会出现向后兼容性问题,并且所有与先前版本兼容的插件都应该无需修改即可工作。说到这里,上个月出现了一些有趣的新插件
pytest-instafail:在测试运行时显示失败信息
pytest-qt:测试用 QT/Pyside 编写的 GUI 应用程序
pytest-xprocess:在测试运行中管理外部进程
pytest-random:随机化测试顺序
其他几个插件,如 pytest-django,也发布了维护版本。有关更完整的列表,请查看 https://pypi.ac.cn/search/?q=pytest
一般信息请参阅
安装或升级 pytest
pip install -U pytest # 或 easy_install -U pytest
特别感谢 Floris、Ronny、Benjamin 以及许多错误报告者和修复提供者。
愿夹具与你同在,holger krekel
2.3.4 和 2.3.5 之间的更改¶
永远不要将夹具函数用于测试函数收集
允许重新运行测试项 / 有助于修复 pytest-reruntests 插件,也有助于减少夹具/资源引用
将捕获的 stdout/stderr 放入 junitxml 输出,即使对于通过的测试也是如此(感谢 Adam Goucher)
问题 265 - 将 nose setup/teardown 与 setupstate 集成,这样如果它没有设置就不会尝试 teardown
问题 271 - 不在工作节点上写入 junitxml
问题 274 - 当 doctest 不知道示例位置时,不要尝试显示完整的 doctest 示例
问题 280 - 在有缺陷的 CPython 2.6.0 上禁用断言重写
注入“getfixture()”助手以从 doctest 中检索夹具,感谢 Andreas Zeidler
问题 259 - 在断言重写时,与 Python 2 上 ASCII 的默认源编码保持一致
问题 251 - 报告跳过而不是忽略带有 init 的类
问题 250 unicode/str 在参数化名称和值中混合现在可以工作
问题 257,以注释行结尾的源文件的断言触发编译不会在 python2.5 中崩溃(通过 py>=1.4.13.dev6 修复)
修复 –genscript 选项以生成也适用于 python3.3 的独立脚本(导入器顺序)
问题 171 - 在断言重写中,显示一些全局变量的 repr
修复“-k”的选项帮助
将分发的长描述移至 README.rst
改进 metafunc.parametrize() 的文档字符串
修复了在使用 capsys 和 pytest.set_trace() 的测试函数中,查看 capsys.readouterr() 时会崩溃的错误
在自定义 python_functions 测试发现时,允许指定以“_”开头的名称作为前缀。(感谢 Graham Horler)
通过将额外数据放在新行并增加缩进,改进 PYTEST_DEBUG 跟踪输出
确保像 skip/fail 这样的 OutcomeExceptions 已初始化异常属性
问题 260 - 不在普通的 unittest 用例中使用 nose 特殊设置
修复问题 134 - 打印阻止运行指定测试项的收集错误
修复问题 266 - 接受 MarkEvaluator 表达式中的 unicode