我试图在我的Rails应用程序中运行按计划的Sidekiq任务,在生产中运行Capybara。它在本地工作(正如它设计的那样),但是在部署时我遇到了一个Cliver::Dependency::NotFound
错误。
你对我怎么能做到这一点有什么想法吗?
require 'capybara'
require 'capybara/cuprite'
Capybara.javascript_driver = :cuprite
Capybara.enable_aria_label = true
Capybara.register_driver(:cuprite) do |app|
Capybara::Cuprite::Driver.new(app, {
js_errors: false,
headless: true,
timeout: 500,
slowmo: 0.05
})
end
@session = Capybara::Session.new(:cuprite)
@session.visit('www.some-url-goes-here.com')
这是访问任何URL时触发的错误。
/app/vendor/bundle/ruby/3.0.0/gems/ferrum-0.11/lib/ferrum/browser/command.rb:32:in `initialize': Could not find an executable for the browser. Try to make it available on the PATH or set environment variable for example BROWSER_PATH="/usr/bin/chrome" (Cliver::Dependency::NotFound)
发布于 2022-03-11 15:26:05
您需要告诉Cuprite,Chrome浏览器二进制文件位于您的生产机器上。它搜索公共位置,因此在生产env中,它要么没有安装,要么安装在非默认位置。
https://stackoverflow.com/questions/71436965
复制相似问题