将测试信息添加到.egg信息
eggtestinfo的Python项目详细描述
eggtestinfo自述文件
概述
这个包是一个setuptools插件:它向生成的 .egg-info目录,捕获 ^运行测试时{tt2}$命令。
尤其是,生成的文件包含以下信息:
- test_module
包含test_suite函数的模块的虚线名称 可以调用以计算包的unittest.TestSuite。
此选项与test_suite冲突。
此选项可以在命令行中重写,例如:
$ python setup.py test --test_module=my_package.tests
- test_suite
可以调用以计算 unittest.TestSuite包。
此选项与test_module冲突。
注意,这个名称not使用与其他 setuptools callables:函数名附加到 用点而不是冒号表示的模块名称。
此选项可以在命令行中重写,例如:
$ python setup.py test --test_suite=my_package.utils.find_tests
- test_loader
一个setuptools入口点,当调用它时,返回 一个装入器类,适合作为thettestLoader参数传递 到unittest.main()。
- 不能在命令行上重写此选项;它只能 被指定为setup()的参数。
- tests_require
软件包的setuptools需求规范列表 在运行测试时必须是可导入的。
- 无法在命令行上重写此选项。
使用扩展名
包为setuptools'^{tt15}注册一个入口点$ 组别:因此,在任何环境中构建egg信息时都会用到它 就在Python身上。
以确保您的包得到记录的测试信息,即使在 在尚未安装此软件包的环境中使用, 在对setup()的呼叫中添加以下内容:
from setuptools import setup setup(name='my_package', # ... setup_requires=['eggtestinfo'], #... )
示例
以下示例显示为 各种样品包。
对于其测试可由setuptools的默认加载程序完成的包,但是 其测试依赖于另一个不属于“正常”的包 包的依赖项:
test_module = None test_suite = None test_loader = None tests_require = another_package
对于包含模块“tests”的包,该模块包含“test_suite” 返回整个包的测试套件的函数:
test_module = my_package.tests test_suite = None test_loader = None tests_require = None
对于在其“utils”模块中具有函数“find_tests”的包, 返回包的测试套件:
test_module = None test_suite = my_package.utils.find_tests test_loader = None tests_require = None
对于使用来自zope的“跳过层”加载程序的包。测试:
test_module = None test_suite = None test_loader = zope.testing.testrunner.eggsupport:SkipLayers tests_require = zope.testing>=3.7dev
eggtestinfo更改日志
0.3(2011-03-10)
- 已验证/添加python3兼容性断言。
- 增加了测试。
0.2.2(2008-09-19)
- 打包更新:添加了更广泛的文档。
0.2.1(2008-03-09)
- 打包更新:添加新的trove分类器,“framework::setuptools plugin”。
0.2(2007-11-16)
- 在生成的文件中添加了“test_loader”和“test_module”信息。
0.1(2007-11-15)
- 初次发布。