Как стать автором
Обновить

Автоматизация тестирования, которая не ломается при первом редизайне

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров5.5K
Всего голосов 5: ↑4 и ↓1+3
Комментарии6

Комментарии 6

Не понятно конечно как вы ушли от падений связанных с редизайном с таким вот пэйддж обджект... Ну да ладно, ушли так ушли, молодцы.

Как по мне так не хватает явных декораций для элементов, таких как 'button', 'input' и т.п., которые бы позволили вынести имплементации в свои интерфейсы.

Рест ажур можно было сделать тоже чуть более поддерживаемым, как минимум вынести path в сам класс юзеров, чтоб потом по всему коду не менять.

Ну а так, если честно, даже завидую, что заказчики вами довольны. Удачи, развивайтесь!

Спасибо за комментарий! Я понимаю, что редизайны могут вызывать сложности, особенно в контексте автоматизации тестирования. Мы стараемся использовать паттерн Page Object Model, чтобы минимизировать влияние изменений на тесты.

Что касается явных декораций, наш код уже содержит аннотации, такие как @Test, @Issue, @Story и @DisplayName. На данном этапе их нам вполне достаточно. Также стоит отметить, что названия методов описывают их функциональность, что тоже можно считать своего рода декорацией.

Эм...

Локаторы должны быть в отдельном модуле, а в пейджах должны быть методы, которые оперируют элементами через эти локаторы.

Спасибо за комментарий, такая логика тоже имеет место быть. Однако нам визуально проще держать их в одном классе, так же такая практика описана в книгах Selenium Design Patterns and Best Practices и Automated Testing with Selenium

Согласен, но всё зависит от объёма и сложности. Те же локаторы уже тяжело держать на пэйдже, когда на ней 20 элементов. А когда 200? Тут уж и селекторы в отдельном файле не справятся. У меня вообще уже организован поиск элемента на странице через его лэйбл (если подписан) и тип, к которому элемент относится (дропдаун, инпут и т.п.), так мне удалось сократить явные локаторы к минимуму. Но конечно, такое можно не для всего сделать.

Спустя некоторое время, когда UI-тесты были написаны, у ручных тестировщиков стало меньше рутинной работы,

Точнее, у них вообще не стало работы ;) (немного сарказма)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий