Как AI помогает чинить Playwright тесты?

Автоматизированные тесты, хотя и важны для качества, могут создавать трудности при сопровождении. Интеграция AI в процесс отладки позволяет упростить исправление упавших тестов. Подход заключается в генерации промпта для AI, который включает сообщение об ошибке, фрагмент кода теста и ARIA-снимок страницы. Этот промпт затем добавляется в HTML-отчёт Playwright в виде вложения.
Как AI помогает чинить Playwright тесты?
Изображение носит иллюстративный характер

Для автоматической генерации промпта используется специальная фикстура, которая срабатывает, когда тест падает. Важно очистить сообщение об ошибке от ANSI-кодов, получить фрагмент кода, который вызвал ошибку, и создать ARIA-снимок всей страницы. В промпт включаются данные: название теста, сообщение об ошибке, фрагмент кода и ARIA-снимок.

Использование ARIA-снимка страницы позволяет AI генерировать более точные локаторы, основанные на ролях элементов (getByRole, getByLabel и т. д.). Тестирование показывает, что AI успешно справляется с распространенными проблемами, такими как изменение роли элементов, изменение текста и неоднозначность локаторов.

Для оптимизации процесса можно использовать GitHub Copilot Edits, который позволяет вставлять промпт и получать исправления прямо в редакторе кода. В будущем можно улучшить процесс, добавив кнопки "Fix with AI" в Playwright VS Code Extension и в HTML-отчёт, что упростит взаимодействие с AI-агентами. Существует готовый репозиторий с рабочим примером. Для интеграции нужно добавить фикстуру к Playwright и использовать её.


Новое на сайте

5563Как правильно выбирать полосу движения в городе: экзамен по пдд? 5562Разработка резервной утилиты ReBack на Rust: ключевые решения и архитектура 5561Нужен ли RabbitMQ в контейнерной среде? 5560Может ли один человек изменить ситуацию в условиях катастрофы? 5559Сколько стоят ваши идеи? Как оценить интеллектуальную собственность? 5558Как дизайн стал драйвером бизнеса: трансформация роли дизайнера? 5557Как сохранить неповторимую красоту сельской местности Суррея: ваш голос имеет значение? 5556Сердце приюта: невероятная история Анн Чард и ее любви к животным 5555Зимняя тревога на Харкерли-роуд: более 150 лебедей под угрозой на дороге 5554Какие песни русского рока покорили слушателей? 5553Не станет ли лондонская система общественного транспорта ещё удобнее? 5552Как посчитать стоимость забора вокруг садовых участков? 5551Как встроить фронтенд в JAR-файл: практическое руководство 5549Due Diligence: зачем нужны «шпионские игры» перед покупкой IT-продукта?