[英]how do i redirect the output of nosetests to a textfile?
我尝试过“nosetests p1.py> text.txt”并且它无法正常工作。
管道此控制台输出的正确方法是什么?
尝试:
nosetests -s p1.py > text.txt 2>&1
最后 - 显然 - 提示:如果您不在测试文件目录中,请在.py文件之前添加。
我想在这里添加更多细节。
在我的版本(v1.3.7)上,Nose正在登录stderr
而不是预期的stdout
。 为什么鼻子登录stderr
而不是stdout
超出我的范围。 因此,解决方案是将stderr
流重定向到您的文件。 重定向字符默认发送stdout
。 --nocapture, -s
标志用于阻止鼻子捕获您自己的print
语句。
$ nosetests -s -v test/ > stdout.log 2> stderr.log
有一点需要注意,就是虽然stderr
,似乎在每个输出端被刷新, stdout
没有得到刷新,所以如果你是tail
荷兰国际集团的stdout.log
文件,你不会看到输出,直到鼻子或OS决定冲洗。 因此,如果您认为它不起作用,请尝试退出测试运行器,这将导致stdout
刷新。
有关重定向linux流的信息,请参阅此答案。
参数-s
- 不捕获标准输出
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.