gpt4 book ai didi

java - Selenium WebDriver、Firefox、Centos,无法找到匹配的功能集

转载 作者:行者123 更新时间:2023-12-02 09:35:21 26 4
gpt4 key购买 nike

我有一个使用 Selenium WebDriver 来控制 FireFox 的应用程序。它作为 Tomcat 下的 Web 应用程序运行 - 是的,这是一个有点奇怪的架构,但这样做有充分的理由。

我已经在我的 MacBook 上对此进行了测试,并且运行良好。我的代码调用 WebDriver,WebDriver 调用 gecko,Firefox 运行,一切都很好。

我现在转移到 Centos-7 机器,并遇到了问题

org.openqa.selenium.SessionNotCreatedException: Unable to find a matching set of capabilities Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03' System info: host:'xxx', ip: 'a.b.c.d', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-693.el7.x86_64', java.version: '1.8.0_222' Driver info: driver.version: FirefoxDriver

我正在使用

  • Selenium :3.141.59
  • Gecko:geckodriver 0.24.0 (2019-01-28)
  • 火狐浏览器:Mozilla Firefox 60.8.0

我已安装并运行 Xvfb。

我的代码只是调用

m_driver = new FirefoxDriver();

我认为这是当前的习语。

我已添加

JAVA_OPTS="-Dwebdriver.gecko.driver=/opt/gecko/geckodriver"

到我的 tomcat.conf

我在旧版本的 Firefox 和 Gecko 中看到了对此类问题的引用,并表明这可能是版本问题,但据我所知,我使用的都是最新版本。

请提出修复或进行一些诊断的建议。

最佳答案

我认为你已经很接近了。尽管 tomcat.conf 中的以下行看起来很完美:

JAVA_OPTS="-Dwebdriver.gecko.driver=/opt/gecko/geckodriver"

但我仍然不确定 -Dwebdriver.firefox.driver=/usr/bin/firefox 是否适合您。

根据Class FirefoxDriver.SystemProperty webdriver.firefox.driver 的值引用常量字段 DRIVER_XPI_PROPERTY这是系统属性,定义要在浏览器中安装的 webdriver.xpi 浏览器扩展的位置。如果未设置,将使用与此类捆绑的预构建扩展。除非绝对必要,否则此恒定场必须保持不变。

因此删除 -Dwebdriver.firefox.driver=/usr/bin/firefox 将解决该问题。

<小时/>

更新

有关您的用例的更多详细信息将有助于我们更好地调试问题。但是,正如您所提到的 Xvfb 已安装并运行,您需要注意以下几个事实:

  • 确保如果您在无显示的系统上运行Firefox,则必须使用 headless 模式
  • headless 模式GeckoDriver v0.24.0的正确用法是:

    options.headless = True
  • 如果按如下方式设置 MOZ_HEADLESS=1,则不再需要 xvfb-run:

    $ export MOZ_HEADLESS=1   # this way you only have to set it once

You can find a detailed discussion in How to make firefox headless programmatically in Selenium with python?

  • 如果您更改了系统路径,请重新启动系统
  • 始终在 tearDown(){} 方法中调用 driver.quit() 来关闭和销毁 WebDriverWeb Client 优雅地实例化。
  • 始终以非 root 用户身份执行您的@Tests

关于java - Selenium WebDriver、Firefox、Centos,无法找到匹配的功能集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57577576/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com