SeleniumGrid + TestNG + Ant = Test Framework on Java

30
Test Framework on Java Тимофей Сухачев s: timofey.sukhachev m: [email protected]

Transcript of SeleniumGrid + TestNG + Ant = Test Framework on Java

Page 1: SeleniumGrid + TestNG + Ant = Test Framework on Java

Test Framework on Java

Тимофей Сухачевs: timofey.sukhachev

m: [email protected]

Page 2: SeleniumGrid + TestNG + Ant = Test Framework on Java

1. Что в коробке?2. Тестовый случай или

«Однажды в автобусе»3. Сущности продукта в тестах4. Пред и пост состояния5. Последовательные тесты и

параллельные сценарии6. Расширяем Selenium

Page 3: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 4: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 5: SeleniumGrid + TestNG + Ant = Test Framework on Java

Аннотации методов Зависимые методы Хранение тестов в xml формате Группы тестов HTML отчеты Параметризация тестовыми данными Интеграция с IDE Большое сообщество

Page 6: SeleniumGrid + TestNG + Ant = Test Framework on Java

Компилирует и запускает тесты Хранение параметров запуска тестов Интеграция с IDE

Page 7: SeleniumGrid + TestNG + Ant = Test Framework on Java

Тестовый случай или

«Однажды в автобусе»

Page 8: SeleniumGrid + TestNG + Ant = Test Framework on Java

Шаг/Шаги выполнения

Ожидаемый результат

Page 9: SeleniumGrid + TestNG + Ant = Test Framework on Java

Но сколько же может быть шагов?

Page 10: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 11: SeleniumGrid + TestNG + Ant = Test Framework on Java

Как определять и использовать сущности

продукта в тестах?

Page 12: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 13: SeleniumGrid + TestNG + Ant = Test Framework on Java

до

после

Page 14: SeleniumGrid + TestNG + Ant = Test Framework on Java

Многие свойства появляются только после

входа в автобус!

Page 15: SeleniumGrid + TestNG + Ant = Test Framework on Java

Мадам должна выйти из автобуса

Page 16: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 17: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 18: SeleniumGrid + TestNG + Ant = Test Framework on Java

Прост

о и

п

осл

ед

овател

ьн

о

Page 19: SeleniumGrid + TestNG + Ant = Test Framework on Java

Когда сценариев много структура пред и пост состояния становится

многоуровневой

Page 20: SeleniumGrid + TestNG + Ant = Test Framework on Java

Наша мадам может параллельно с покупкой билета обсуждать сериалы

Page 21: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 22: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 23: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 24: SeleniumGrid + TestNG + Ant = Test Framework on Java

PASSED TESTS

Test method ExceptionTime

Instance

discussEpisode1Test class: madam.DiscussSoap

0madam.DiscussSoap@12a54f9

discussEpisode2Test class: madam.DiscussSoap

0madam.DiscussSoap@12a54f9

purchaseTicketTest class: madam.TicketPurchase

0madam.TicketPurchase@30e280

verifyTicketTest class: madam.TicketPurchase

0madam.TicketPurchase@30e280

Page 25: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 26: SeleniumGrid + TestNG + Ant = Test Framework on Java

Имплементируем все методы интерфейса Selenium с использованием перезагрузки

статических методов selenium-grid-standalone

Page 27: SeleniumGrid + TestNG + Ant = Test Framework on Java

clickAndWait(String locator) Перегружаем click(String locator) Дизайн зависимые методы Работа с почтой …

Page 28: SeleniumGrid + TestNG + Ant = Test Framework on Java
Page 29: SeleniumGrid + TestNG + Ant = Test Framework on Java

Актеры и Сущности

Пред/пост состояния

Сценарии и Тесты

Пишем тесты

testng.xml

Page 30: SeleniumGrid + TestNG + Ant = Test Framework on Java