Разыскиваю примеры применений Page Object подхода, желательно с uml диаграммами

page-object
pageobject
selenium
design-patterns
Теги: #<Tag:0x00007fedc7b10f00> #<Tag:0x00007fedc7b10d98> #<Tag:0x00007fedc7b10c30> #<Tag:0x00007fedc7b10af0>

(Tatyana Durova) #1

Создавала уже тему про паттерны в тестировании, и теперь вот поняла что конкретно я искала. Скорее вместо паттернов мне на самом деле больше помогли диаграммы и описание тестовых проектов, сделанных с подходом page object/

Сама нашла такие полезные примеры применения Page Object
http://www.codeproject.com/Articles/1013318/Page-Object-Pattern-in-Automation-Testing
https://queue.acm.org/detail.cfm?id=2793039
https://kreisfahrer.gitbooks.io/selenium-webdriver/content/page_object_pattern_arhitektura_testovogo_proekta/ispolzovanie_patterna_page_object.html

Хочется собрать по-больше лайф-хаков для подхода page object + примеры реальных диаграмм классов в проекте с PageObject и диаграмм последовательности/состояний, по которым было бы видно как выполняется переход из одного блока/страницы в другой, какими путями.


(Sergey Korol) #2

Что вы так зациклились на этих диаграммах? Диаграммы внутренностей фреймворков - это да, интересно. А из PageObject'ов вы что почерпнете то? DSL какой-то специфической сферы? Среднестатистический site map вам покажет очень приближенную структуру того, что в итоге обрастает automation'ом. Как делаются инжекты кастомных объектов в пейджу, можете посмотреть на примере HtmlElements. По-моему, вы концентрируетесь немного не на тех вещах. Да и показывать свои доменные слои вам вряд ли кто-то будет по различным причинам.


#3

Собственную структуру PageObject'ов лучше держать максимально простой и не накручивать.

Гораздо полезнее разобраться в механизме работы Selenuim: как взаимодействуют PageFactory, ElementLocatorFactory, PageObjectMemberDecorator, WebElement, WebDriver, как при этом ищутся элементы. Там и с составлением UML можно поупражняться, если для какой-то работы это надо.

Вся информация - в самих исходниках: https://github.com/SeleniumHQ/selenium/tree/master/dotnet


(Zvonov) #4

я считаю тема вполне годная. организвционная структура пейджобжекта предполагает разные решения. и поиск чего-то для себя нового и более оптимального вполне здравое занятие.


(Tatyana Durova) #5

Да, паттерн состояние, стратегия, декоратор, синглтон - ну и другие там очень в тему. Я вот прочитала книгу про паттерны от HeadFisrt, сейчас изучаю банду четырех (правда не спешно), думаю тема очень актуальна на самом деле.


(Sergey Konkov) #6

Татьяна, http://automatetheplanet.com/page-object-pattern/ и далее все 14 статей So Far in the "Design Patterns in Automation Testing" Series.

Как раз там C# и UML диаграммы.