воскресенье, 18 октября 2020 г.

PyTest + Selenium - быстро создаем каркас автотестов

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

Часто это бывают другие люди, которые просят меня сделать что-то, что я и сам хотел, но все время откладывал, и стоит мне только пообещать им что я это сделаю - и я делаю то, что, возможно, никогда бы без них не сделал и со временем бы забыл совсем.

Так получилось и со скринкастом по библиотеке Smart Page Object, которую я написал примерно два года назад - библиотеку написал, использовал ее на паре проектов, поделился с друзьями, но широкого распространения библиотека не получила (потому что я ленивый).

Сегодня я записал скринкаст с описанием всех методов библиотеки и обзором простых автоматизированных тестов на основе PyTest + Selenium с использованием этой библиотеки.

А вот и сам скринкаст:

Хорошая новость в том, что вы можете просто скопировать мой код, посмотреть 30 минут видео на скорости x2 и начать писать автоматизированные тесты на Selenium с использованием паттерна PageObject (а так же использовать примеры этого кода в тестовых заданиях на позицию QA Automation).

Сам код лежит в репозитории: https://github.com/TimurNurlygayanov/ui-tests-example

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

Надеюсь этот код будет полезен начинающим автоматизаторам, а так же тем, кто пишет тесты на Python + Selenium, но до сегодняшнего дня не использовал PageObject. Можете присылать pull requests :) 

Удачной автоматизации :)