2017-01-19 8 views
7

я получаю исключение,Невозможно создать новый удаленный сеанс - Selenium WebDriver

Исключения в потоке «основной» org.openqa.selenium.SessionNotCreatedException: Невозможно создать новую удаленной сессии. желаемые возможности = возможности [{marionette = true, browserName = firefox, version = 48.0.1, platform = ANY}], требуется возможностей = возможности [{}] 'при попытке запустить сценарий селена в удаленном веб-драйвере.

Концентратор и узел сконфигурированы должным образом и способны взаимодействовать друг с другом.

Selenium web driver: 3.0 Платформа: Windows server 2012 R2. Firefox Версия: 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"); 

трассировка стека:

19, 2017 6:07:36 PM org.openqa.selenium. remote.ProtocolHandshake createSession INFO: попытка прослушивания би-диалекта, предполагая, что Postel's Закон верен на удаленном конце 19 января 2017 года 18:07:37 PM org.openqa.selenium.remote.ProtocolHandshake createSession INFO: Возврат к исходному протоколу OSS JSON. 19 января 2017 6:07:37 PM org.openqa.selenium.remote.ProtocolHandshake CreateSession INFO: Падение назад к прямой W3C удаленного конца соединения Exception в потоке "главный" org.openqa.selenium.SessionNotCreatedException: Невозможно создать новый удаленный сеанс. желаемые возможности = возможности [{marionette = true, browserName = firefox, version = 48.0.1, platform = ANY}], необходимые возможности = возможности [{}] Информация о сборке: версия: '3.0.0', версия: '350cf60', время: '2016-10-13 10:48:16 -0700' Системная информация: host: 'Hostname', ip: 'IP', os.name: 'Windows Server 2012 R2', os.arch : 'amd64', os.version: '6.3', java.version: '1.8.0_101' Информация о драйвере: driver.version: RemoteWebDriver на 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)

+0

У вас есть geckodriver на удаленной машине по правильному пути? Также используйте код, который вы использовали для запуска узла на удаленном компьютере. – mosaad

+1

Спасибо mosaad.It начал работать после размещения geckodriver в узловой машине. –

ответ

1

Создать BAT-файл, добавив ниже команды

C:\Selenium_Grid 
start java -Dwebdriver.gecko.driver=C:\Selenium_Grid\geckodriver\geckodriver.exe -jar C:\Selenium_Grid\selenium-server-standalone-3.0.1.jar -role node -hub http://localhost:4444/grid/register -browser browserName=firefox -port 5555 

(замените пути с ваш)

затем запустите.bat файл перед выполнением вашего кода