Регрессионное тестирование мечты!

Для этого навайбкоженного блога с помощью Playwright написал e2e и visual regression тесты. Первые через DOM/локаторы проверяют, что все нужные элементы есть на страницах, навигация и внешние ссылки работают. Вторые — что не поползли вёрстка, шрифты и т.п. путём сравнения ряда заранее прихранённых эталонных скриншотов для разных разрешений с тем, что в моменте открывается в браузере. При желании что-то поменять средствами LLM можно не бояться, что поедет вёрстка, пропадёт нужный блок или разломается какая-то ссылка.

Для домашнего блога пойдёт. Если говорить о решении для enterprise, то всё несколько сложнее, нужно тестировать разные:

  • браузеры (очевидно, что Firefox, Chromium-based и другие под капотом по-разному рендерят страницы)
  • ОС (разные встроенные шрифты)

Получается декартово произведение вариантов (каждый с каждым), где варьируется и браузер (Playwright умеет подтягивать), и ОС, и разрешения. Хосты с Windows и Mac надо поднимать, получается?

Комбинаций много, но должны ли мы тестировать их все? Зависит от того, насколько мы ценим своих пользователей. Обычно останавливаются только на популярных вариантах.

А что с мобильной версией? А если у вас еще и мобильное приложение есть? В идеале, конечно, проверять на разных реальных мобильных устройствах (для этого в том числе организуют свои фермы). На моей памяти устройства Huawei подкидывали специфические баги. При недостатке бюджетов можно довольствоваться эмуляторами/симуляторами.

Если JS-фронт обычно одной версии, то поддерживаемых версий мобильных приложений может быть много. Особенную актуальность такое тестирование приобретает, если у вас backend-driven UI, а движок, который отрисовывает UI, разнится от версии к версии.

← Назад к списку статей