硒firefox非法钥匙值

发布于 2025-02-12 09:02:46 字数 1523 浏览 0 评论 0原文

我正在尝试在Docker容器中运行Selenium独立Firefox,其中RSPEC 5.1,Rails 5.2.1和Capybara 2.11.0

当我运行测试时,我会收到以下错误:

Selenium::WebDriver::Error::UnknownError:
       Illegal key values seen in w3c capabilities: [unexpectedAlertBehaviour]

我的代码看起来如下:

Capybara.register_driver :headless_firefox do |app|
  capa = Selenium::WebDriver::Remote::Capabilities.new
  capa['unexpectedAlertBehaviour']= 'accept'
  driver = Capybara::Selenium::Driver.new(
    app,
    browser: :firefox,
    url: "http://firefox-server:4444",
    capabilities: capa
  )

  driver
end

Capybara.javascript_driver = :headless_firefox

我也尝试了<<<<代码>“忽略” 而不是'Accept'完全省略了功能。

当运行Chrome独立时,看起来像这样:

Capybara.register_driver :headless_chrome do |app|
  options = Selenium::WebDriver::Chrome::Options.new
  options.add_argument('--headless')
  options.add_argument('--disable-gpu')
  options.add_argument('--window-size=1280,800')

  driver = Capybara::Selenium::Driver.new(
    app,
    browser: :chrome,
    url: "http://chrome-server:4444",
    options: options
  )

  driver
end

我没有错误。

有人知道如何解决这个问题吗?

这是我使用的docker映像

firefox-server:
    image: selenium/standalone-firefox
    ports:
      - "7900:7900"
      - "4444:4444"

添加版本详细信息

I am trying to run Selenium standalone firefox inside a Docker container, with RSpec 5.1, Rails 5.2.1 and Capybara 2.11.0

When I run the tests I get the following error:

Selenium::WebDriver::Error::UnknownError:
       Illegal key values seen in w3c capabilities: [unexpectedAlertBehaviour]

My code looks like the following:

Capybara.register_driver :headless_firefox do |app|
  capa = Selenium::WebDriver::Remote::Capabilities.new
  capa['unexpectedAlertBehaviour']= 'accept'
  driver = Capybara::Selenium::Driver.new(
    app,
    browser: :firefox,
    url: "http://firefox-server:4444",
    capabilities: capa
  )

  driver
end

Capybara.javascript_driver = :headless_firefox

I have also tried with 'ignore' instead of 'accept' aswell as omitting the capabilities entirely.

When running the Chrome standalone, which looks like this:

Capybara.register_driver :headless_chrome do |app|
  options = Selenium::WebDriver::Chrome::Options.new
  options.add_argument('--headless')
  options.add_argument('--disable-gpu')
  options.add_argument('--window-size=1280,800')

  driver = Capybara::Selenium::Driver.new(
    app,
    browser: :chrome,
    url: "http://chrome-server:4444",
    options: options
  )

  driver
end

I don't get the error.

Do anyone know how to fix this?

This is the docker image I am using

firefox-server:
    image: selenium/standalone-firefox
    ports:
      - "7900:7900"
      - "4444:4444"

EDIT:

Added version details

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文