Правило проверяет одну страницу. Но большинство проблем живёт в пути по интерфейсу: вошли, открыли оплату, заполнили форму. Действие — это такой путь, записанный один раз и повторяемый сколько угодно. Без действий тесты не смогли бы пройти дальше первой страницы. Ниже — как записать действие и на что опирается его надёжность.
Что такое действие
Сценарий работы с интерфейсом: открыть адрес, заполнить поле, выбрать значение, нажать кнопку, дождаться перехода на другую страницу. Действие можно записать своими руками или описать словами и получить от агента. И то и другое лежит обычным файлом в папке проекта.
Запись
- Включите запись в панели дополнения — на значке появится красная отметка.
- Поработайте на сайте как обычно: войдите, перейдите в нужный раздел, заполните форму.
- Остановите запись — шаги покажутся списком. Лишние можно удалить, у любого шага поправить значение.
- Дайте действию понятное имя и сохраните.
Нажатия и ввод внутри самой панели в запись не попадают: продукт не записывает работу со своим же окном.
Пароли в файлы не попадают
Если во время записи вы вводите пароль, в файл вместо него подставляется имя переменной, а само значение вы храните отдельно, в настройках проекта. Так пароль не окажется в истории правок, которую видят все, кому открыт доступ к коду проекта. При сохранении продукт напомнит об этом ещё раз — на случай, если вы записали что-то чувствительное в обычное поле.
Как действие находит элементы
Записывая нажатие, продукт запоминает, как найти этот элемент на странице. От этого зависит, переживёт ли действие следующую правку вёрстки. Порядок такой: сначала специальные метки разработчика, потом стабильные идентификаторы и подписи, и только в последнюю очередь — путь по структуре страницы. Последний вариант самый хрупкий: стоит поменять разметку, и шаг потеряется. Такие шаги помечаются, чтобы вы видели слабое место заранее.
Прогон
Кнопка запуска выполняет действие на текущей вкладке. После прогона появляется новый экран с пометкой «через действие» и результаты проверок на той странице, куда действие пришло. Если сценарий уводит на другой сайт, продукт сначала спросит подтверждение: выходить за пределы проверяемого сайта разрешено не всегда.
Действия словами
Описать сценарий можно текстом: «войти и открыть раздел оплаты». Агент напишет действие сам — с учётом накопленных знаний о том, как устроен ваш интерфейс. Готовое действие появляется неподтверждённым: его нужно прогнать и посмотреть, что получилось. Если всё верно — подтверждаете, если нет — удаляете или просите поправить. В тестах участвуют только подтверждённые действия, поэтому черновик никогда не сломает готовую проверку.
Честные ограничения
- Шаги идут по одной строке — без циклов, условий и повторяющихся блоков. Так сделано нарочно: переход между страницами разрушает всё, что выполнялось до него, и только простая последовательность переживает этот момент надёжно.
- На переходе между сайтами фрагмент может повториться — если шаг увёл на другой домен, часть сценария иногда выполняется дважды. Внутри одного сайта такого не бывает.
- Общий бюджет времени — около минуты на всё действие. Долгие сценарии лучше разбивать: короче действие — понятнее ошибка, когда что-то сломается.
Дальше: как собрать из действий и правил тест — в разделе Тесты.