无法创建新的远程会话。所需功能=功能[{browserName = chrome,版本= 55.0.2,平台= WINDOWS}]

时间:2018-09-18 14:42:33

标签: selenium google-chrome webdriver selenium-chromedriver selenium-grid

我已经建立了一个硒网格中心和节点。在我的Java中,我的功能设置如下:

Login.capability = DesiredCapabilities.chrome();
Login.capability.setVersion("55.0.2");
Login.capability.setBrowserName("chrome");
Login.capability.setPlatform(org.openqa.selenium.Platform.WINDOWS);
Login.driver = new RemoteWebDriver(new URL("http://xxx.xxx.xxx.xxx/wd/hub"), Login.capability);   

当我开始构建时,我收到以下错误消息:

Unable to create new remote session. desired capabilities = Capabilities [{browserName=chrome, version=55.0.2, platform=WINDOWS}], required capabilities = Capabilities [{}]

中心输出:

selenium grid no capabilities found in request

节点输出表明:

16:23:13.323 INFO [ActiveSessionFactory.apply] - Capabilities are: {
  "browserName": "chrome",
  "goog:chromeOptions": {
  },
  "platform": "WINDOWS",
  "version": "55.0.2"
}
16:23:13.324 INFO [ActiveSessionFactory.lambda$apply$11] - Matched factory org.openqa.selenium.remote.server.ServicedSession$Factory (provider: org.openqa.selenium.chrome.ChromeDriverService)
Starting ChromeDriver 2.42.591088 (7b2b2dca23cca0862f674758c9a3933e685c27d5) on port XXXXXXXXX
Only local connections are allowed.

所以看来该节点正常工作,但为什么集线器却说日志中没有功能?

1 个答案:

答案 0 :(得分:3)

此错误消息...

Unable to create new remote session. desired capabilities = Capabilities [{browserName=chrome, version=55.0.2, platform=WINDOWS}], required capabilities = Capabilities [{}]

...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。

根据您的代码试用,您已将 Chrome浏览器版本设置为 55.0.2 。因此,您需要确保 Selenium Node 客户端中安装了 Chrome浏览器v55.0.2

从另一个角度看:

  • 您正在使用 ChromeDriver 2.42
  • ChromeDriver 2.42的发行说明中明确提到以下内容:
  

支持 Chrome v68-70

因此 ChromeDriver v2.42 Chrome浏览器v55.0.2

之间存在明显的不匹配

解决方案

作为解决方案,您需要: