Python 测试框架: 用 Python 测试框架简化测试
2010-09-22 11:23:51 来源:WEB开发网这意味着 py.test 可以同时在多个 Python 解释器版本和多个操作系统上运行测试。因此,如果项目支持多个平台,希望测试解决方案能够自动地支持多平台,而不需要通过编写脚本把测试复制到不同的平台并运行它们,那么 py.test 的这个特性是非常吸引人的。
定制和可扩展性
这三种测试框架都为单独的用户和整个项目提供定制能力,可以根据需要选择测试框架的行为和选项。
在 Zope 包中,指定默认选项的 buildout 常常调用 zope.testing 模块。这意味着运行测试的开发人员会得到统一的结果集。但是,如果在项目级上选择的行为无法满足他们的需要,他们仍然可以指定自己的命令行开关。
nose 框架通过用户主目录中的 nose.cfg 或 .noserc 文件支持用户个性化定制,用户可以在这些文件中指定测试结果的显示方式。
对于 py.test 和 nose 框架,都可以提供针对整个项目的选项。py.test 框架会在它测试的项目中寻找 conftest.py 文件,然后在这个文件中寻找针对整个项目的选项,比如是否检测并运行 doctest 以及应该使用哪种模式检测测试文件和函数。nose 框架寻找项目范围的 setup.cfg 文件(这是提供 Python 包的相关信息的标准方式),然后在其中寻找 [nosetests] 节。
另外,py.test 和 nose 都支持插件,这些用户提供的模块可以安装新的命令行选项和在工具中添加新行为,但是它们提供的配置和能够实现的功能有差异。
结束语
在过去,每个 Python 项目都使用自己的习惯做法;采用新一代 Python 测试框架,就能够提供简洁的习惯做法和统一的测试技术。下一篇文章 要开始研究每种框架实现的测试机制,也就是它们用来搜索测试模块和测试文件的技术。请继续阅读下一篇文章。
更多精彩
赞助商链接