2017-02-02 19 views
0

«Хромированный Chrome» не работает с «Selenium Grid».«Хроника» «Неиспользуемые возможности»> не работает с «Selenium Grid»

  1. У меня есть настройки хаба правильно и узел
  2. однако при попытке указать браузер Chrome на одном из узлов не работают.

Текущий код:

 case "chrome": 
      if (null == webdriver) { 
       System.setProperty("webdriver.chrome.driver", Constant.CHROME_DRIVER_DIRECTORY); 
       DesiredCapabilities capability = DesiredCapabilities.chrome(); 
       capability.setBrowserName("chrome"); 
       capability.setVersion("55.0.2883.87 m"); 
       capability.setPlatform(Platform.WINDOWS); 
       webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability); 

      } 
      break; 

Исключение: org.openqa.selenium.SessionNotCreatedException: Невозможно создать новый удаленный сеанс. желательные возможности = Возможность [{browserName = хром, версия = 55.0.2883.87 м, платформа = WINDOWS}], требуемые возможности = Возможность [{}]

enter image description here

ответ

0

Пар вещей:

  • На стороне узла убедитесь, что хромограф (для браузера Chrome), geckodriver (для браузера Firefox) и IEDriverServer (для IE) доступны в переменной PATH и могут быть вызваны, просто открыв командную строку и набрав их имена ,
  • Когда вы делаете DesiredCapabilities capability = DesiredCapabilities.chrome();, оно автоматически задает имя браузера соответствующим образом. Поэтому вам не нужно устанавливать его снова через capability.setBrowserName("chrome"); (чтобы вы могли его удалить).
  • Если вы не указали явно версию браузера на уровне своего узла через файл nodeConfig json, удалите capability.setVersion("55.0.2883.87 m");, потому что это заставляет ваш тест запрашивать узел, который может поддерживать версию chrome 55, но если вы не укажете то же самое управление версиями на вашем узле, ваша сетка отклонит ваш новый запрос сеанса, указав, что он не может найти требуемые требуемые возможности.
  • На вашем скриншоте похоже, что ваш концентратор работает на localhost, слушая порт 4444, но ваш код показывает, как будто вы пытаетесь напрямую подключиться к узлу. Поэтому, пожалуйста, измените webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability); на `webdriver = new RemoteWebDriver (новый URL (« http://localhost:4444/wd/hub »), возможность);

После того, как вы позаботились об этих изделиях, ваша проблема должна быть исправлена.

+0

благодарит за помощь – Gbru