Алексей Зозуленко - "Использование selenium grid 2 для...

26

Upload: qa-dnepropetrovsk-community-ukraine

Post on 22-May-2015

2.994 views

Category:

Technology


0 download

DESCRIPTION

Последовательное выполнение функциональных тестов занимает очень долгое время. Особенно если нужно тестировать со многими конфигурациями. Необходимо уменьшать время прохождения тестов. Этого можно достигнуть при помощи уменьшения количества тестов, их оптимизации и атомизирования. Второй путь - запускать тесты параллельно. Хотя оптимизация не помеха запускать тесты параллельно, чтобы получать Для того, чтобы получать действительно классные результаты тестируя при помощи Selenium2, служит еще один дополнительных инструмент - SeleniumGrid 2.В моем докладе вы также ознакомитесь с тем, как: Конфигурировать тесты для работы с хабом Разворачивать SeleniumGrid 2 Настраивать запуск тестов

TRANSCRIPT

Page 1: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"
Page 2: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Это Я

Page 3: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

Распараллелива

ние тестов наSelenium Grid v2

Алексей

Зозуленко

QA Team Lead

Page 4: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Содержание

Теория

• ?Зачем• ?Как

Почтипрактика

•Проблемы• Решения

Page 5: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Теория

?Зачем

Page 6: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

?Стоят в очереди

Page 7: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

?Долго

Page 8: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

… тогда

Page 9: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Теория

?Как

Page 10: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Готовый инструмент

TestNG

Parallel xUnit

Page 11: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Собственный алгоритм

Page 12: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

-Тесты > Среда

Env

Test

Test

Test

Page 13: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Очередь -> Среды

Tests Queue

Env

Env

Env

Page 14: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Почти практика

/Проблемы Решения

Page 15: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

: Проблема зависимости

Init state

Test 1

Test 2 …

Test N

Page 16: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Решение

Независимость

Копии тестовой

среды

Page 17: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

: Проблема Логирование

Logg

erTest

Test

Test

Page 18: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

: Решение каждому свое

Test 1

Logger 1Test 2

Logger 2…

…Test N

Logger N

Page 19: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Инструмент

Page 20: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Page 21: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Запуск инструмента0 Hub java -jar selenium-server-standalone.jar -role hub

0 RC java –jar selenium-server.jar –role rc  -hub http://localhost:4444/grid/register -port 5555

java –jar selenium-server.jar –role webdriver  -hub http://localhost:4444/grid/register -port 5556

Page 22: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Page 23: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Подготовка тестовSelenium1

0БылоSelenium selenium = new DefaultSelenium(“localhost”, 4444, “*firefox”, “http://www.google.com”);

0СталоSelenium selenium = new DefaultSelenium(“huburl”, 4444, “*firefox”, “http://www.google.com”);

Page 24: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

Подготовка тестовSelenium 2

0БылоWebDriver driver = new FirefoxDriver();

0СталоWebDriver driver = new RemoteWebDriver(new URL("http://huburl:4444/wd/hub"), DesiredCapabilities.firefox());

Page 25: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

QADnepr Mini Conference

, Все проще чем…кажется

Page 26: Алексей Зозуленко - "Использование Selenium Grid 2 для ускорения выполнения тестов"

Спасибо

QADnepr Mini Conference

Распараллеливание тестов с Selenium Grid v2

Алексей Зозуленко

[email protected]