WEB开发网
开发学院软件开发Python Python 测试框架: 寻找要测试的模块 阅读

Python 测试框架: 寻找要测试的模块

 2010-09-22 11:22:53 来源:WEB开发网   
核心提示: py.test 和 nosetests 工具甚至有几个相同的命令行选项,比如 -v 选项在执行测试时输出测试的名称,Python 测试框架: 寻找要测试的模块(3),可能过不了多久,只要程序员熟悉这两种工具,但是对于新的开发人员,如果只想在调试 bug 或添加新特性之前检查包是否能够在他的

py.test 和 nosetests 工具甚至有几个相同的命令行选项,比如 -v 选项在执行测试时输出测试的名称。可能过不了多久,只要程序员熟悉这两种工具,就能够运行大多数公共 Python 包的测试。

但是,还有最后一级标准化!当今的大多数 Python 项目在源代码中包含一个顶级 setup.py 文件,它支持下面的命令:

# Common commands supported by setup.py files 
 
$ python setup.py build 
$ python setup.py install

当今的许多 Python 项目使用 setuptools 包支持标准 Python 没有提供的 setup.py 命令,包括运行项目的所有测试的 test 命令:

# If a project's setup.py uses "setuptools" 
# then it will provide a "test" command too 
 
$ python setup.py test

这是标准化的最高层次:如果项目都以一致的方式支持 setup.py test,开发人员就可以通过统一的接口运行所有 Python 包的测试套件。nose 通过提供一个入口点支持 setup.py,这个入口点调用与 nosetests 命令相同的测试运行例程:

# A setup.py file that uses "nose" for testing 
 
from setuptools import setup 
 
setup( 
  # ... 
  # package metadata 
  # ... 
  setup_requires = ['nose'], 
  test_suite = 'nose.collector', 
  )

当然,即使项目提供了 setup.py 入口点,大多数开发人员可能仍然使用 nosetests,因为 nosetests 提供更强大的命令行选项。但是对于新的开发人员,如果只想在调试 bug 或添加新特性之前检查包是否能够在他的平台上工作,那么 test_suite 入口点是非常方便的。

上一页  1 2 3 4 5 6 7  下一页

Tags:Python 框架

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接