我正在尝试使用WSL2来跟踪应用程序,并且在运行RSpec时出现此错误:
Selenium::WebDriver::Error::WebDriverError:
chrome not reachable
(Session info: headless chrome=77.0.3865.75)
有人知道要解决吗?
我的capybara.rb:
require "capybara/rails"
require "selenium-webdriver"
Capybara.default_max_wait_time = 10
Capybara.register_driver :chrome do |app|
options = Selenium::WebDriver::Chrome::Options.new(
args: %w[headless no-sandbox]
)
Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)
end
Capybara.javascript_driver = :chrome
Capybara.server = :puma, { Silent: true }
在本文“ https://ngauthier.com/2017/09/rails-system-tests-with-headless-chrome-on-windows-bash-wsl.html”之后,我将路径放入env变量中以到达chromewebdriver二进制文件!
答案 0 :(得分:0)
我只需使用以下代码进行修复
Capybara.register_driver :chrome do |app|
options = Selenium::WebDriver::Chrome::Options.new(args: %w[
headless no-sandbox disable-gpu window-size=1920x1080
])
Capybara::Selenium::Driver.new(app,
browser: :chrome,
desired_capabilities: {
"chromeOptions" => {
w3c: false
}
}
)
end
请让我知道这是否可以解决您的问题