无法创建新的Chrome远程会话

时间:2017-01-11 21:04:39

标签: java selenium-webdriver selenium-chromedriver selenium-grid

我正在尝试使用Selenium Grid启动新的Chrome浏览器,但最终会出现以下错误

无法创建新的远程会话。 desired capabilities = Capabilities [{browserName = chrome,version = 55.0.2,platform = WINDOWS}],required capabilities = Capabilities [{}] 构建信息:版本:'3.0.1',修订版:'1969d75',时间:'2016-10-18 09:49:13 -0700' 系统信息:主机:'PL9710388',ip:'10 .61.249.5',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'1.8.0_111 “ 驱动程序信息:driver.version:RemoteWebDriver

以下是启动远程浏览器的代码

java -Dwebdriver.chrome.driver = C:\ chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role hub

java -Dwebdriver.chrome.driver = C:\ chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role node

cap = DesiredCapabilities.chrome();
cap.setVersion("55.0.2");
cap.setBrowserName("chrome");
cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);
browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);

你能帮我解决一下是什么问题吗?

3 个答案:

答案 0 :(得分:3)

java -Dwebdriver.chrome.driver=C:\chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role node导致普通的vanilla节点被剥离,这与PLATFORM风格无关(即,该节点未被分类为将平台识别为特征并且应该作为通用节点工作)。

然而,您的测试代码似乎正在指定平台,如下所示

cap = DesiredCapabilities.chrome();
cap.setVersion("55.0.2");
cap.setBrowserName("chrome");
cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);

要解决您的问题,请将测试代码更改为如下所示

cap = DesiredCapabilities.chrome(); // this sets the browser name. u dont need to do it again.
browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);

一旦你有了这个,你应该能够正确执行测试。

在启动节点之前,请不要忘记将chromedriver二进制文件所在的位置添加到PATH变量中,这样就不会发现与selenium相关的问题无法找到chromedriver&# 39;位置。

有关使用Grid的一般概述,您可以参考my blog post

答案 1 :(得分:3)

确保您的代码能够在系统中找到chromedriver。您可以以编程方式设置路径,甚至可以从下面的link

下载并保留您的驱动程序
System.setProperty("webdriver.chrome.driver","/path to/chromedriver.exe");
cap = DesiredCapabilities.chrome();
cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);
browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);

答案 2 :(得分:0)

我遇到了同样的情况,并且发现平台,浏览器名称和浏览器版本详细信息与网格配置不匹配。特别是因为我使用platrom作为Windows,而我本来会使用VISTA。另外,请确保您使用的是中心URL而不是节点URL。中心URL为http://hubIP:port/wd/hub

请参阅下面的屏幕截图,以获取有关该节点的正确详细信息: enter image description here