[英]How to access stdout or stderr in a Capybara integration test
我正在嘗試調試一些Capybara集成測試並遇到意外問題。 當我在Capybara測試中設置斷點時,我可以檢查變量,但我不能調用puts
或$stdout.puts
或$stderr.puts
。 要明白我的意思,看看這個輸出:
(rdb:1) "foo"
"foo"
(rdb:1) puts "foo"
nil
據推測這是因為Capybara捕獲stderr和stdout作為其標准操作的一部分,以便與selenium驅動程序保持安靜等等。我明白了,但問題是檢查ruby調試器中的字符串會逃脫換行符,這使得它無法實現讀取HTML等長格式化字符串。
如何使用IO#puts
獲取對活動終端的引用以輸出用於調試目的的內容?
你有沒有看過Capybara-cli,這可能有助於以這種方式進行調試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.