无法为Chrome Windows执行Selenum Grid

时间:2018-07-05 07:27:03

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

我正在使用工作区。我的代码一览如下:

@BeforeMethod:
driver= gridChrome();

WebDriver gridChrome() {
System.setProperty("webdriver.chrome.driver","/absolute/path/to/chrome/driver");
DesiredCapabilities chromeCapabilities = DesiredCapabilities.chrome();
chromeCapabilities.setPlatform(Platform.WINDOWS);   
chromeCapabilities.setVersion("67.0");  
return (new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), chromeCapabilities));  
}

工作区信息: 操作系统:Windows Server 2008 R2
本地IP:172.xxx.xxx.xxx

集线器: (selenium-server-jar-directory)> java -jar selenium-server-standalone-3.13.0.jar -role hub
(显示的IP为:198.xxx.xxx.xxx)

节点: (selenium-server-jar-directory)> java -jar selenium-server-standalone-3.13.0.jar -role节点-hub http://localhost:4444/grid/register

有效创建集线器和节点。问题是,我能够在本地系统中执行相同的代码,但不能在工作区中执行。我也找到两个不同的IP。我也尝试使用它们创建集线器和节点,但没有成功。

抛出的异常是: org.openqa.selenium.WebDriverException:转发新会话时出错:功能{browserName:chrome,平台:WINDOWS,版本:67.0}。

另一个问题: 函数调用DesiredCapabilities.setVersion(),将其设置为哪个参数的版本,即Selenium Driver或Browser或Platform?

任何帮助将不胜感激。 谢谢。

1 个答案:

答案 0 :(得分:0)

尝试将节点连接到工作空间上的集线器时执行此命令。 :
我已经在AWS工作区上对其进行了尝试,并且可以正常工作。

java -Dwebdriver.chrome.driver="C:\Users\jk001119\Desktop\LATEST-SET-UP-GRID\chromedriver.exe" -jar selenium-server-standalone-3.3.1.jar -role node -hub http://192.168.11.28:4444/grid/register -browser "browserName=chrome,version=56,platform=WINDOWS"

要连接不同的浏览器集,可以使用如下命令:

java -Dwebdriver.chrome.driver="C:\Users\jk001119\Desktop\LATEST-SET-UP-GRID\chromedriver.exe" -Dwebdriver.ie.driver="C:\Users\jk001119\Desktop\LATEST-SET-UP-GRID\IEDriverServer.exe" -Dwebdriver.gecko.driver="C:\Users\jk001119\Desktop\LATEST-SET-UP-GRID\geckodriver32bit.exe" -jar selenium-server-standalone-3.3.1.jar -role node -hub http://192.168.11.28:4444/grid/register -browser "browserName=chrome,version=56,platform=WINDOWS", -browser "browserName=internet explorer,version=11,platform=WINDOWS", -browser "browserName=firefox,version=52,paltform=WINDOWS"

您可以删除DesiredCapabilities:

chromeCapabilities.setPlatform(Platform.WINDOWS);
chromeCapabilities.setVersion(“ 67.0”);

希望它对您有帮助。