我有一些测试记录到stdout,我想根据鼻子运行的详细程度更改测试脚本中的日志级别。
如何在正在运行的其中一个测试中访问正在运行的nose实例的详细程度?
答案 0 :(得分:1)
这有点像黑客,但你可以找出当前测试运行器使用的nose.config.Config对象,并检查config.verbosity属性。
import nose.config
def test_checkverbosity():
import gc
for obj in gc.get_objects():
if isinstance(obj, nose.config.Config):
break
print obj.verbosity
assert False
答案 1 :(得分:1)
看起来在鼻子中处理这个问题的预期方法是在测试中使用logger
框架,然后使用--logging-level
选项控制要捕获的级别。
默认情况下,nose会捕获测试所做的所有日志,但可以使用--logging-filter
config参数指定过滤器。