0
我正在嘗試使用capybara的方法page.should have_content(「some txt」)。如何從Capybara :: Session對象獲取頁面對象
我用的水豚通過獲取水豚會話,但無法弄清楚如何讓頁面對象
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
end
Capybara.current_driver = :selenium
capdriver = Capybara::Session.new(:selenium)
capdriver.visit ("https://google.com")
如何使用本使用從上面的活動會話(capdriver):
page.should have_content("some google text")
我可能會設置錯誤的水豚(我習慣直接使用Selenium :: Webdriver)。
我已經嘗試這樣做,我得到一個「NoMethod」錯誤(我確實有需要「水豚/ rspec的」 - 我假設這包括RSpecMatchers ??) NoMethodError: 未定義的方法'have_content'爲#> –
ibaralf
要求capybara/rspec包含rspec視圖中的匹配器和功能規格 - https://github.com/teamcapybara/capybara/blob/master/lib/capybara/rspec.rb#L10 - 所以除非你在視圖或功能的例子(場景/它阻止),那麼它不是包括在內。從錯誤它看起來像在SetPassword類的實例中運行它,是RSpec測試實例嗎?如果是,那麼確定它是用'type :::feature'或'type :::view'標記的,這取決於它是什麼類型的測試。 –