【发布时间】:2017-06-03 19:11:20
【问题描述】:
我遇到了异常
线程“main”中的异常 org.openqa.selenium.SessionNotCreatedException:无法创建新的 远程会话。所需的能力 = 能力 [{marionette=true, browserName=firefox, version=48.0.1, platform=ANY}], 必需 尝试运行硒脚本时的功能=功能[{}]' 在远程 Web 驱动程序中。
集线器和节点配置正确,并且能够相互通信。
- Selenium 网络驱动程序:3.0
- 平台:Windows server 2012 R2。
- 火狐版本:48.0.1
我的脚本中使用的代码:
System.setProperty("webdriver.gecko.driver", "mypath/geckodriver.exe");
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette", true);
capabilities.setBrowserName("firefox");
capabilities.setPlatform(Platform.ANY);
RemoteWebDriver driver =new RemoteWebDriver(new URL("http://ipofthenode:4444/wd/hub"), capabilities);
driver.get("http://stackoverflow.com");
System.out.println("executed");
详细的堆栈跟踪:
2017 年 1 月 19 日下午 6:07:36 org.openqa.selenium.remote.ProtocolHandshake createSession INFO:尝试双语会话,假设 Postel 的 法律适用于远程端 2017 年 1 月 19 日下午 6:07:37 org.openqa.selenium.remote.ProtocolHandshake createSession 信息: 回退到原始的 OSS JSON Wire 协议。 2017 年 1 月 19 日 6:07:37 PM org.openqa.selenium.remote.ProtocolHandshake createSession INFO: 回退到直接 W3C 远程端连接线程中的异常 “主要” org.openqa.selenium.SessionNotCreatedException:无法 创建新的远程会话。期望的能力 = 能力 [{marionette=true, browserName=firefox, version=48.0.1, platform=ANY}],所需功能 = Capabilities [{}] 构建信息: 版本:'3.0.0',修订:'350cf60',时间:'2016-10-13 10:48:16 -0700' 系统信息:主机:'主机名',ip:'IP',os.name:'Windows Server 2012 R2',os.arch:'amd64',os.version:'6.3',java.version: '1.8.0_101' 驱动程序信息:driver.version:RemoteWebDriver at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:91) 在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141) 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241) 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:128) 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:155) 在 demo.Grid.main(Grid.java:26)
【问题讨论】:
-
远程机器上的 geckodriver 是否位于正确的路径?还分享你用来在远程机器上启动节点的代码。
-
感谢 mosaad。将 geckodriver 放入节点机器后开始工作。
标签: java selenium selenium-webdriver selenium-grid