我遇到了使用parallel_test gem在Jenkins上运行自动化测试的问题(也用于Capybara,selenium - Ruby语言)。我用Xvfb以无头模式运行它。但是,由于“没有此类会话”或“镀铬无法访问”错误,大多数测试方案都失败了
这是我在Jenkins的测试工作上的运行命令:
xvfb-run -a --server-args='-screen 0 1680x1050x24' bundle exec parallel_cucumber features/ -n 4 -o '-t ~@ignore -p jenkins_chrome'
这是我在env.rb中的register_driver:
Capybara.register_driver :chrome do |app|
Capybara::Selenium::Driver.new(app,
browser: :chrome,
desired_capabilities: {
"chromeOptions" => {
"args" => %w{ --start-maximized --disable-impl-side-painting --no-sandbox }
}
})
end
这是错误信息:
(Driver info: chromedriver=2.20.353124 (035346203162d32c80f1dce587c8154a1efa0c3b),platform=Linux 4.0.5 x86_64) (Selenium::WebDriver::Error::NoSuchDriverError)
./features/step_definitions/view_a_profile.rb:204:in `/^user has signed in as "([^"]*)"$/'
有人说错误是由于xvfb造成的,有人说由于Chrome无法并行运行 有没有人遇到过这个问题?我该如何解决这个问题?
答案 0 :(得分:0)
带有chromedriver和xvfb的Chrome将无法运行 SUSE。 (可能与此无关)
通常在构建服务器上,所有内容都以root身份执行 使用chrome为我造成这个确切的错误。 (为此我自己寻找解决方法)