簡體   English   中英

如何將nosetests的輸出重定向到文本文件?

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM