2

在使用 capybara-webkit 时,我遇到了 selenium 没有error_messages方法的问题,但是,文档capybara-webkitpage.driver.error_messages一旦我的标志scenerio设置为:js => true. 但是,尝试访问它时,它会抛出:

NoMethodError:
       undefined method `error_messages' for #<Capybara::Selenium::Driver:0xc501fc0>

我尝试使用以下方法访问消息:

page.should_not have page.driver.error_messages

我也试过:

page.should_not :have_errors

也:

page.should_not have_errors

但无济于事。

4

1 回答 1

3

我的理解是,这是驱动程序error_messages中包含的一种方法。capybara-webkit它不适用于selenium-webdriver驱动程序。

根据您得到的异常,您正在使用selenium-webdriver. 默认情况下,Capybara 在:js => true指定时使用 selenium-webdriver。

您可能想要更改您javascript_driver的使用:webkit(如使用文档中所述 - https://github.com/thoughtbot/capybara-webkit)。

Capybara.javascript_driver = :webkit
于 2013-05-08T13:05:17.570 回答