无法在 Selenium 3.0 网格/节点上创建 WebDriver 实例

Unable to create WebDriver instance on Selenium 3.0 Grid / Node

尝试 运行 使用 Selenium 3.0 在本地进行一些 Selenium 测试,但出现以下错误:

org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{marionette=true, screen-resolution=1680x1050, commandTimeout=300, record-video=true, version=50.1.0, platform=MAC, tags=[Ljava.lang.String;@1ac4da8f, build=jgilmore-12291406, idleTimeout=120, name=homePageSmokeTest, browserName=firefox, seleniumVersion=null, maxDuration=360}], required capabilities = Capabilities [{}]
Build info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:49:13 -0700

目前运行如下设置 Selenium Hub:

java -jar /Users/jgilmore/Selenium/selenium-server-standalone-3.0.1.jar -role hub -timeout 15

和节点(首先尝试 运行 Firefox 50.1.0 Geckodriver):

java -Dwebdriver.gecko.driver=/Users/jgilmore/Selenium/geckodriver -jar selenium-server-standalone-3.0.1.jar -port 5557 -role node -hub http://localhost:4444/grid/register -browser "browserName=firefox, browserVersion=50.1.0, maxInstances=10"

Grid 和 Node 启动正常(在 Grid 控制台中查看它们),但在尝试 运行 我的测试时我无法创建 WebDriver 实例。这曾经对我有用 Selenium 2.x,所以我假设我在这里遗漏了一些东西。感谢您的帮助!

所以在 gasalis 的帮助下,我想我们解决了我的问题:

  1. 在节点和我的本地配置上将 browserVersion 更改为 version
  2. 出于某种原因,我必须将 Firefox 的浏览器版本和 Chrome 设置为 ANY -- 我无法明确说明浏览器版本,例如 Firefox 的“50.1.0”或 Chrome 的“55”。可能是我遗漏的东西,但这是另一个问题的问题。

通过更改这两件事,我现在可以成功创建 运行 我的本地 Selenium 脚本所需的 WebDriver。

感谢 gsaslis 的帮助!