Docker selenium gird не может подключиться к URL нашего клиента - PullRequest
0 голосов
/ 26 ноября 2018

У нас есть скрипт автоматизации, который выполняется в jenkins и grid в докере.Поэтому, когда бы мы ни пытались запустить код селена, он подключается к узлу сетки chrome или ff, а затем выполняется на основе кода Java селена.

Все это происходит на linux-сервере, где установлен докер, и у нас есть четыре контейнера - Jenkins, Selenium grid, chrome node и ff node.

Но когда я пытаюсь запустить задание из jekinsон терпит неудачу и выдает следующее сообщение об ошибке:

runners.TestRunner > Scenario: Extract the Report.classMethod FAILED
org.openqa.selenium.remote.UnreachableBrowserException
Caused by: java.net.NoRouteToHostException
org.openqa.selenium.remote.UnreachableBrowserException
Caused by: java.net.NoRouteToHostException
org.openqa.selenium.remote.UnreachableBrowserException
Caused by: java.net.NoRouteToHostException

Теперь то же самое работает нормально, когда я не запускаю его из настройки докера и делаю это из IntelliJ.

private WebDriver createSTAGEDriver() throws MalformedURLException {
        switch (driverType) {
            case GridChrome :
                DesiredCapabilities cap = DesiredCapabilities.chrome();
                cap.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR, UnexpectedAlertBehaviour.IGNORE);
                driver = new RemoteWebDriver(new URL("http://xx.xx.xxx.xxxx:xxxxx/wd/hub"),cap);
                break;

Невозможновыяснить проблему.

Любая помощь будет очень признателен.

1 Ответ

0 голосов
/ 18 февраля 2019

Это исправлено,

Фактически вместо IP в функции createSTAGEDriver, мне нужно упомянуть имя ip, которое было определено в моем файле Docker .yml

version: '2'
services:
 hub:
   restart: always
   image: selenium/hub:3.14
   ports:
     - "4444:4444"
   networks:
     - "selenium-grid_default"
 firefox:
   restart: always
   image: selenium/node-firefox:3.5
   environment:
    - HUB_PORT_4444_TCP_ADDR=hub
    - HUB_PORT_4444_TCP_PORT=4444
    - NODE_MAX_INSTANCES=2
    - NODE_MAX_SESSION=2
   links:
    - "hub"

, поэтому в основномвместо ip мне нужно использовать этот хаб, который определен в ссылках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...