【发布时间】:2019-12-25 21:40:45
【问题描述】:
我有一个使用 Selenium WebDriver 来控制 FireFox 的应用程序。它在 Tomcat 下作为 Web 应用程序运行 - 是的,这有点奇怪,但这样做有充分的理由。
我一直在我的 MacBook 上对此进行测试,并且运行良好。我的代码调用WebDriver,WebDriver调用gecko,Firefox运行,一切正常。
我现在转到 Centos-7 盒子,遇到了问题
org.openqa.selenium.SessionNotCreatedException:无法找到 匹配的功能集构建信息:版本:'3.141.59', 修订:'e82be7d358',时间:'2018-11-14T08:17:03' 系统信息: 主机:'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.version:FirefoxDriver
我正在使用
- 硒:3.141.59
- 壁虎:geckodriver 0.24.0(2019-01-28)
- Firefox:Mozilla Firefox 60.8.0
我已经安装并运行了 Xvfb。
我的代码只是调用
m_driver = new FirefoxDriver();
我认为这是当前的成语。
我已经添加了
JAVA_OPTS="-Dwebdriver.gecko.driver=/opt/gecko/geckodriver"
到我的 tomcat.conf
我从旧版本的 Firefox 和 Gecko 中看到对此类问题的引用,并表明这可能是版本问题,但据我所知,我使用的是最新版本。
请提供修复建议或进行一些诊断。
【问题讨论】:
-
我忘记了一个重要的事实:我在 Selinux 下运行,所以有额外的安全级别。 Tomcat Java 进程对其使用的临时端口没有“name_connect”权限。一个适当的解决方案是管理 Java 的权限以使用一组端口。如果我弄清楚了,我会发布一个正式的答案。
标签: java firefox selenium-webdriver geckodriver selenium-firefoxdriver