我使用" Capybara.current_session.driver
"我定义驱动程序时访问Selenium方法如下:
Capybara.default_driver = :selenium
但是当我在无头模式下运行我的TC(Capybara + Selenium)时,由于未定义的Selenium方法,我发现TC失败了。 所以问题是如果我定义了Capybara Poltergeist驱动程序如何访问Selenium方法:
require 'capybara/poltergeist'
Capybara.default_driver = :poltergeist
Capybara.javascript_driver = :poltergeist
Capybara.current_driver = :poltergeist
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app,
:js_errors => false,
:phantomjs_options => ['--ignore-ssl-errors=yes'],
:phantomjs_logger => File.open("F:/Programming/VLoop/Project/28.05.2016/webapp/log/test_phantomjs.log", 'w+')
)
end
答案 0 :(得分:0)
当您使用poltergeist驱动程序时,您无法使用selenium方法,它们仅在您的会话使用selenium驱动程序时可用。这就是为什么不建议直接在驱动程序上调用特定方法,而是使用Capybara提供的API,以便您的测试与多个驱动程序保持兼容。您尝试使用哪些硒特定方法?