我们开始使用nose框架在python中编写功能和单元测试用例。我们是在编写这些测试时开始学习python的。因为我们的测试类/函数之间有很多依赖关系,所以我们决定在nose顶部使用proboscis framework来控制执行顺序。
在我们的测试中,我们有相当多的“打印”语句,而鼻子似乎忽略了这些语句!测试正在按预期的顺序运行,并测试所有这些测试,但不会将打印语句数据打印到控制台。你知道我们这里遗漏了什么吗?
顺便说一句,一旦我们转移到unittest.TestCase并用@test装饰所有的类和它们的成员函数,我们就停止了从‘test’派生我们的类。
发布于 2012-10-11 01:37:11
注意:根据documentation的说法,“未使用的参数会传递给或单元测试模块”,因此下面这句话应该适用于通过用python run_tests.py替换nosetests来应用于Proboscis。
正如@Wooble在他的评论中提到的那样,默认情况下,nose捕获stdout,并仅在失败的测试中显示它。您可以使用nosetests -s或--nocapture开关覆盖此行为:
$ nosetests --nocapture就像@Wooble在他的评论中提到的那样,我建议使用logging模块而不是print。然后,您只需向nosetests传递-l DEBUG或--debug=DEBUG开关(其中DEBUG将替换为要显示的记录器名称的逗号分隔列表),即可显示模块的日志记录输出:
$ nosetests --debug=your-logger-namehttps://stackoverflow.com/questions/12824282
复制相似问题