我使用 nosetests
运行我的单元测试,运行得很好。我想获取 nostests
找到的所有测试列表,但不实际运行它们。有没有办法做到这一点?
我使用 nosetests
运行我的单元测试,运行得很好。我想获取 nostests
找到的所有测试列表,但不实际运行它们。有没有办法做到这一点?
目前可用的版本为0.11.1。您可以按如下方式获取测试列表而无需运行它们:
nosetests -v --collect-only
我建议使用:
nosetests -vv --collect-only
尽管 man nosetests
中没有描述 -vv
选项,但 "关于 nose 单元测试框架的扩展介绍" 指出:
使用
-vv
标志可以从 nose 的测试发现算法中得到详细输出。这将告诉您 nose 是否在正确的位置查找测试。
当尝试确定为什么 nosetests 只能找到部分测试时,-vv
选项可以节省时间。(在我的情况下,这是因为 nosetests 跳过了某些测试,因为相应的 .py
脚本是可执行的。)
总之,-vv
选项非常方便,我几乎总是使用它而不是 -v
选项。
即将推出:上周在PyCon上演示了一个新的--collect
开关,可以产生这种行为。它应该很快就会在主干上,并将在0.11版本中发布。
https://groups.google.com/g/nose-users列表是nose问题的绝佳资源。
-vv
视为比-v
更好的选项。 - Sardathrion - against SE abusenosetests -v --collect-only | grep 'some-string'
不起作用。有任何想法为什么? - Eyal Levinnosetests -v --collect-only 2>&1 >/dev/null | grep 'some-string'
。 - sihrc