Ответ вслух Middle Page Object и архитектура обновлено

Ваш Page Object

Вопрос

Покажите на примере, как у вас устроен Page Object и почему именно так.

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Образцовый ответ: «Каждая страница это класс с локаторами и методами вроде login(user) или addtocart(sku). Если метод ведёт на другую страницу, он возвращает её объект.

Что должно прозвучать в ответе

  • Класс на страницу или компонент, локаторы внутри

  • Методы на языке пользователя, переход возвращает следующую страницу

  • Компоненты для повторяющихся блоков, поиск от корня

  • Проверки в тестах, Page Object отдаёт состояние

  • Данные готовятся через API и билдеры, а не через UI

Что могут спросить следом

  • Как вы тестируете таблицу с 10 одинаковыми кнопками?
  • Наследование или композиция?

Разбор

Образцовый ответ: «Каждая страница это класс с локаторами и методами вроде login(user) или add_to_cart(sku). Если метод ведёт на другую страницу, он возвращает её объект. Шапку, таблицы и модалки вынес в компоненты: компонент получает корневой локатор и ищет элементы внутри, поэтому на странице с двумя таблицами ничего не путается. Проверки держу в тестах, Page Object только отдаёт состояние, так один метод работает и в позитивном, и в негативном сценарии. Данные создаю через API-клиент и билдеры, UI использую только для того, что проверяю»).

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме