28
Page Object with Selenide

Page object with selenide

Embed Size (px)

Citation preview

Page 1: Page object with selenide

Page Object with Selenide

Page 2: Page object with selenide

…Немного о себе

Page 3: Page object with selenide

Очем речь?

• Что такое Selenide

• Преимущества использования Selenide

• Идеология инструмента

• Версия 1: Page Object free

• Версия 2: UI Map + static Page Object

• Версия 3: Selenide Page object

Page 4: Page object with selenide

Selenide 

Selenide – это это обёртка вокруг Selenium Webdriver

Page 5: Page object with selenide

Profit 1: Type less, test more 

Page 6: Page object with selenide

Profit 1: примеры Webdriver Selenide

1

2

3

4

5

Page 7: Page object with selenide

Profit 2: Удобныематчеры 

Page 8: Page object with selenide

Profit 2: примеры 1

2

3

4

5

6

Page 9: Page object with selenide

Profit 3: Ожидания 

Page 10: Page object with selenide

Profit 3: примеры 1

2

3

Webdriver

Selenide

Page 11: Page object with selenide

Profit 4: Инфраструктура 

Page 12: Page object with selenide

Profit 4: Примеры 

mvn –Dbrowser=chrome testmvn –Dremote=http://ip:port/wd/hub test

1

2

3

4

Andrey Stakhievich
Andrey Stakhievich
Page 13: Page object with selenide

Profit 5: Что еще? 

Selenide - мощный инструмент для написания функциональных тестов.

• Статичный и потокобезопасный WebDriver

• Новые локаторы (sizzle, By.text())

• Helper методы

• Детальные сообщения об ошибках

• Очень понятный и читаемый API

Page 14: Page object with selenide

Page Object 

• UI Map + Static Page object

• Page Object Free

• Selenide Page Object

Page 15: Page object with selenide

Task 

Таблица с сортируемыми колонками

Напишем тест на сортировку

Page 16: Page object with selenide

Iter 1:Page Object Free 

Page 17: Page object with selenide

Iter 1: Выводы 

• Just Simple!!!

• Быстро пишутся

• Средне читаются

• Сложно поддерживать при большом количестве тестов

Page 18: Page object with selenide

Iter 2:UI Map + Static PO Properties File

Locator Mapper

Static Page Object

Page 19: Page object with selenide

Iter 2: Static PO Test 

Page 20: Page object with selenide

Iter 2: Выводы 

• Много букв

• Нужно создать инфраструктуру

• Хорошо читаются

• Просто поддерживать

• Плоские Page Objects

Page 21: Page object with selenide

Iter 3:Selenide PO 

Page 22: Page object with selenide

Iter 3: Before Test 

Page Object Type

Page Factory

Page 23: Page object with selenide

Iter 3: Test 

Page 24: Page object with selenide

Iter 3: Выводы 

• Много букв

• Не нужно создавать инфраструктуру

• Хорошо читаются

• Просто поддерживать

• Объемные Page Objects

Page 25: Page object with selenide

Где последний?!слайд  

Page 26: Page object with selenide

Выводы:

• Каждый из вариантов приемлем

• Page Object free чертовски заманчив с Selenide

• Selenide PO хорошо описывает “объемые” страницы

• UI Map хорош на больших проектах

Page 27: Page object with selenide

Спасибо

АндрейСтахиевич

Page 28: Page object with selenide