[英]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.