我使用的水豚(V2.0.1)使用RSpec(v2.11.0),我有非常類似的例子在README一個規範:Capybara :: ElementNotFound - 我如何看到它檢查的源代碼?
require 'capybara/rspec'
require 'capybara/dsl'
# other setup…
describe "Sign in" do
include Capybara::DSL
before do
within("#session") do
fill_in 'Login', :with => '[email protected]'
fill_in 'Password', :with => 'password'
end
click_link 'Sign in!'
end
subject { page }
it { should have_content "logged_in? true" }
end
不幸的是,這是失敗的消息我看到:
Failure/Error: within("#session") do
Capybara::ElementNotFound:
Unable to find css "#session"
,但它不告訴我它的使用光源的輸出,並有參與點擊該鏈接後,所以我想,以確保什麼是它的檢查對重定向。
似乎水豚是壓制警告(我覺得很煩人,坦率地說),因爲我在幾個地方試過warn page.inspect
,沒有輸出。
任何人都可以告訴我我該如何做到這一點?任何幫助或見解給予非常感謝。
我應該加我沒有使用Rails或黃瓜。
感謝您的回覆。當我無法從示例塊中獲取任何內容時,我不知道如何檢查源代碼。任何想法爲什麼會這樣? A塊之前確實允許STDOUT,這隻發生在我使用水豚時,Rack :: Test不會給我這個問題。 – iain
我看到[別人也有stdout問題](http://stackoverflow.com/questions/9402537/how-to-access-stdout-or-stderr-in-a-capybara-integration-test),所以我已經開放了這部分到Capybara郵件列表。謝謝你的幫助。 – iain
你可以使用調試器gem並以這種方式查看嗎? – bigtunacan