我正在尝试从集线器到节点运行一个简单的代码,集线器和节点连接成功。
执行程序时出现异常
org.openqa.selenium.SessionNotCreatedException
我提到的Chrome驱动程序路径是可以从节点计算机访问的共享路径。
集线器和节点都是远程计算机。
下面是使用的代码:
public static void main(String[] args) throws MalformedURLException { WebDriver driver; System.setProperty("webdriver.chrome.driver", "Q:\\xxxxx\\chromedriver.exe"); DesiredCapabilities dc = new DesiredCapabilities(); dc.setBrowserName("chrome"); dc.setPlatform(Platform.VISTA); driver = new RemoteWebDriver(new URL("http://10.xx.xxx.xx:5566/wd/hub"), dc); //node url driver.get("https://www.google.com"); }
下面是控制台消息:
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{browserName=chrome, platform=VISTA}], required capabilities = Capabilities [{}] Build info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:49:13 -0700' System info: host: 'A5DAFC-W7A-0012', ip: '10.xx.xxx.xx', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.8.0_131' Driver info: driver.version: RemoteWebDriver at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:91) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241) at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:128) at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:155) at testcases.Grid.main(Grid.java:23)
这是您问题的答案:
当您使用以下命令启动 Selenium Grid Hub时 :
java -jar selenium-server-standalone-3.4.0.jar -role hub -port 4123
要通过浏览器执行代码块chromedriver.exe,Google Chrome您可以考虑通过以下命令在端口 5566* 上启动 Selenium Grid Node : *
chromedriver.exe
Google Chrome
java -Dwebdriver.chrome.driver=chromedriver.exe -jar selenium-server-standalone-3.4.0.jar -role node -hub http://localhost:4123/grid/register -port 5566
通过访问Selenium Grid Hub控制台 <IP_of_GridHub>:4123/grid/console查看正在注册的节点。
<IP_of_GridHub>:4123/grid/console
让我知道这是否回答了您的问题。