通常,當一個測試失敗時,我花了相當長的時間試圖找出導致它失敗的原因。如果RSpec在測試失敗時可以啓動Ruby調試器,那麼我可以立即檢查本地變量以深入瞭解原因。如果rspec測試失敗,開始ruby調試器
工作,圍繞我現在使用看起來是這樣的:
# withing some test
debugger unless some_variable.nil?
expect(some_variable).to be_nil
但是,這種方法比較麻煩,因爲我第一次等待測試失敗,然後添加調試線,修復該問題,然後必須刪除調試器行,而我希望它的工作更像gdb
,它有能力在遇到異常時啓動,而不需要用debugger
語句胡說你的代碼庫。
編輯:我試過普利茅斯。它對我來說工作不夠可靠。同樣的發展歷史似乎表明,它不是一個很好的支持寶石,所以我寧願不依賴它。
更新:我嘗試了pry-rescue
,發現它很整潔。但是,我使用zeus很多,並想知道是否有辦法使它與pry-rescue
一起使用。
謝謝 - 我會給這個鏡頭。 – Vighnesh 2013-05-01 19:00:33
有沒有辦法讓'zeus'工作? – Vighnesh 2013-05-06 23:20:46
剛試過最新的宙斯和撬救版本,不起作用 – 23tux 2015-02-04 08:47:22