【发布时间】:2017-05-20 16:55:58
【问题描述】:
这样做的正确方法是什么?
Capybara.register_driver :chrome do |app|
client = Selenium::WebDriver::Remote::Http::Default.new
extension_path = '/Users/jill/Documents/rails_panel-master/rails_panel'
caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args" => ['--load-extension=' + extension_path]})
Capybara::Selenium::Driver.new(app, :browser => :chrome, http_client: client, desired_capabilities: caps )
end
此外,--load-extension 可以使用开关,但在 Chromedriver 上几乎没有相关文档。
Capybara::Selenium::Driver.new( app, :browser => :chrome, http_client: client, :switches => ['--load-extension=' + extension_path] )
【问题讨论】:
-
问题中的技术(-load-extension 适用于 selenium-webdriver (2.53.4),不适用于 selenium-webdriver (3.05)。升级到 3.05 以使用下面的答案中的解决方案。
标签: ruby selenium google-chrome-extension capybara selenium-chromedriver