Выбор стека для тестирования правильности dataLayer объектов на сайтах

Добрый день! Нужен совет по выбору стека для тестирования.

Основная задача тестирования - проверить уходит ли правильный dataLayer пуш при взаимодействии с web сайтом (как обычные сайты, так и pwa). Пробовал селениум и селениум IDE, pytest. dataLayer хочется сохранять для дальнейшего сравнения с тем который должен быть по инструкции.

Я пробовал создавать скрипты только на selenium изначально. Получалось долго и с кучей ошибок (типо staleElement или не найденный элемент).

Потом пробовал записывать тесты в плагине selenium IDE для хрома, а затем тесты формата .side запускать через CLI selenium IDE. Оттуда очень неудобно доставать dataLayer, но решено (парсил логи работы selenium IDE).

Так же пробовал экспортировать тесты из плагина selenium IDE для хрома в формат pytest, и запускать их. При запуске CLI selenium IDE - сам подставляет необходимые задержки и довольно быстро отрабатывает. А при экспорте в pytest (из плагина Selenium IDE) - задержки ставил вручную и это занимало лишнее время.

Иногда тесты не проходят (через какое то время) по самым разным причинам. По итогу тестов нужно будет около 2+ тысяч, и они должны быть надёжными.

Сейчас смотрю в сторону selenium+selenide+java.

Общие требования - воспроизводимость тестов, скорость написания. Особая боль - pwa приложение, смена DOM в процессе скроллинга.

Может у вас есть опыт в похожих задачах? Поделитесь пожалуйста своим мнением)
Спасибо

Привет!
Да, конечно, selenide+java отлично решает эти проблемы: воспроизводимость тестов, скорость написания, смена DOM.

Про pwa приложение и dataLayer - ХЗ. :slight_smile:
Но если вы получили к ним доступ через Selenium, то точно сможете и через Selenide.

Спасибо за ответ! Можете еще посоветовать фреймворк для запуска тестов? Я нашел их достаточно много. Может у вас есть на примете достаточно простой в освоении и с функционалом передачи переменных?

Да вроде не так уж много.
Самые популярные - JUnit 4, TestNG, JUnit 5.

Конечно, самый новый и лучший из них JUnit 5.