Тестирование с Playwright
Теория: Генерация тестов
Playwright умеет самостоятельно генерировать тесты. Это удобно для того, чтобы быстро набросать скелет теста нужного сценария просто перемещаясь по сайту и выполняя различные действия.
Генератор тестов запускается командой codegen, за которой следует адрес тестируемой страницы.
Эта команда открывает два окна:
- Окно браузера, запущенного в специальном режиме, где можно взаимодействовать с тестируемой страницей.
- Инспектор Playwright, в котором мы можем включить запись теста и само содержимое теста после записи
Все что делается внутри браузера, записывается в виде шагов теста в инспекторе. Генератор тестов автоматически выбирает подходящие локаторы, записывает события, заполняет формы и выполняет остальные действия. Единственное с чем ему надо помочь это проверками. Для этого нужно выбрать в панели сверху один из трех вариантов:
- Проверить видимость.
- Проверить текст.
- Проверить значение.
Затем кликнуть на то место, которое надо проверить. После этого в тест добавится нужная проверка.
Этот процесс можно прервать или перезапустить в любой момент времени, поэтому не стоит переживать за лишние действия. К тому же, тест в инспекторе доступен для редактирования. Любые лишние действия можно без проблем убрать.
Конкретный пример
Выполним следующий сценарий:
- Добавим задачу Hello Hexlet
- Добавим задачу Learning something new
- Добавим проверку на видимость задачи Hello Hexlet
- Добавим проверку на видимость задачи Learning something new
В результате получится примерно такой тест:
В глаза бросаются лишние действия, в основном клики. Это нормально, генераторы всегда подобное делают, поэтому после того как тест переносится в код, его нужно сокращать. Вторая особенность генераторов, дублирование. В примере выше любое действие сопровождается использованием локатора. Все это нужно вынести в переменные если тест планируется поддерживать. Если все это сделать, то мы получим отличный тест:


