Перейти к содержимому

Фотография

Вопрос про Selenium grid и паралелльное тестирование на разных платфор


  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1 Le0n

Le0n

    Новый участник

  • Members
  • Pip
  • 2 сообщений

Отправлено 13 декабря 2016 - 13:05

Добрый день.

Задача- протестировать веб приложение на разных платформах и браузерах.

 

1) на Windows 7 (он же hub) Запускаются тесты. тесты написаны на java (Eclipse, запускаются через TestNG для распараллеливания тестов).

Запускаю

 java -jar selenium-server-standalone-3.0.1.jar -role hub -port 4444

Создается хаб.

2) Для эксперементов имеется виртуальные машины:

    а) Windows 7 и браузеры. Запускаются ноды:

 java -jar selenium-server-standalone-3.0.1.jar -role webdriver -hub http://IPHab:4444/grid/register -browser browserName=chrome -port 5557
     java -jar selenium-server-standalone-3.0.1.jar -role webdriver -hub http://IPHab:4444/grid/register -browser browserName=firefox -port 5558

3) Mac OSx сафари браузер:

 java -jar selenium-server-standalone-3.0.1.jar -role node webdriver -hub http://IPHab:4444/grid/register -browser browserName=safari -port 5559

Все тесты работают на этих виртуалках.

 

4) Имеется Ubuntu, на ней установлен Android SDK.

    Настроен тестовый эмулятор андроид - он имеет внутренний адрес - 10.0.2.15 и порт 5556

Я пробрасываю порты на 5555

adb tcpip 5555

    и вроде как мой эмулятор должен отвечать на htttp://localhost:5555

 

Вопросы следующие:

1) Возможно ли использовать такую связку?  в качестве нода и хаба selenium-server-standalone-3.0.1 ?

 2) Если на Ubuntu использовать selendroid в качестве нода, с файлом selendroid-nodes-config.json

{
  "capabilities": [{
      "browserName": "selendroid",
      "maxInstances": 1,
      "aut": "io.selendroid.testapp:0.17.0"
  }, {
      "browserName": "android",
      "maxInstances": 1
  }],
  "configuration": {
      "maxSession": 1,
      "register": true,
      "hubHost": "IPHab",
      "hubPort": 4444,
      "remoteHost": "http://localhost:5555",
      "proxy": "io.selendroid.grid.SelendroidSessionProxy"
  }
}

Подключаясь к хабу

 

url -H "Content-Type: application/json" -X POST --data @selendroid-nodes-config.json http://IPHub:4444/grid/register


пример выбор драйвера для тестов уже на Win 7

public static  RemoteWebDriver getDriver(String browser) throws MalformedURLException {
            return new RemoteWebDriver(new URL("http://IPHab:4444/wd/hub"), getBrowserCapabilities(browser));
        }
        
        private static DesiredCapabilities getBrowserCapabilities(String browserType) {
            switch (browserType) {
            case "firefox":
                System.out.println("Opening Firefox driver");
                return DesiredCapabilities.firefox();
            case "chrome":
                System.out.println("Opening Chrome driver");
                return DesiredCapabilities.chrome();
            case "IE":
                System.out.println("Opening IE driver");
                return DesiredCapabilities.internetExplorer();
            case "safari":
                System.out.println("Opening Safari driver");
                return DesiredCapabilities.safari();
            case "android":
                System.out.println("Opening Android driver");
                return DesiredCapabilities.android();
            default:
                System.out.println("browser : " + browserType + " is invalid, Launching Firefox as browser of choice..");
                return DesiredCapabilities.firefox();
            }
        }
    }                  
}

ничего не получается с подключением к андроид..

Может быть вообще это по другому всё должно работать? Обьясните новичку пожалуйста.

Спасибо!

 


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных