一个快速、并行、功能强大的python单元测试框架
GoodTests的Python项目详细描述
一些功能:
- 它使用"assert"关键字,而不是其他具有钝器方法的框架(如self.assertequals)
- 彩色输出
- 因为使用了"assert"关键字,所以失败可能有关联的消息。e.x.assert len(items)==2,'应为2个items,得到%d'%(len(items),)
- 它只支持运行与给定正则表达式匹配的方法。
- 它支持在一个目录中发现所有测试。
- 替换现有的py.test/单元测试
- 测试扩展了"对象"。测试本身并不能真正导入好的测试的任何部分。
- 许可证是lgpl
- 支持Python2和Python3。
- 并行运行测试
- 每个测试类(每个文件应该有一个)在同一进程中运行。这允许您通过不为每个函数设置和删除类似的数据来获得更高的性能,并允许共享状态和知识(例如,如果类上的test_构造函数失败,则您知道其他所有东西都将失败,因此您可以标记一个标志"self.xwillfail"并在其他优点
- 支持PDB模式(通过–PDB启用)。请参阅下面的"交互式调试"部分。
goodtests通过查找与模式匹配的文件和类(与py.test兼容),支持自动发现给定目录的测试。
每个文件都应该以test$$classname$$.py的形式(其中$$classname$$是名称,例如"magic")。文件中的类应该加上前缀或后缀"test"(例如:"testmagic"或"magictest")。
支持旧的单元测试样式(为每个方法调用的teardown方法和setup方法,以及为每个类调用的setup类、teardown类),还支持更现代的表单、setup/teardown[classname]和setup/teardown[method]
无论方法本身是否成功,setup和teardown函数都会运行(与其他一些单元测试框架相反)。
断言应该在python中使用"assert"关键字(例如:assert 1!=2)
请参见"test_magic.py"以获取示例: