e06399b1f09b70de3222fdabe952c9c615db433e
OTUS Homework 6: Playwright UI Tests
UI-автотесты на Playwright для 4 сценариев OTUS с DI и трассировкой.
Что реализовано
- 4 UI-сценария из ТЗ (Clickhouse, Catalog, B2B, Subscription).
- DI через Guice: ресурсы Playwright создаются в фикстурах и инжектятся в тесты.
- Трассировка включена для каждого теста.
- Линтеры: Checkstyle и SpotBugs.
- Запуск из консоли (Maven).
Сценарии
- Clickhouse: блок преподавателей, drag&drop, popup, next/prev в карточке.
- Каталог курсов: фильтры по направлению/уровню/длительности, проверка изменения карточек.
- Услуги компаниям: переход в “Разработка курса для бизнеса”, направления, переход в каталог.
- Подписки: раскрытие/сворачивание описания, переход к оплате, выбор Trial.
Стек и версии
- Java: 21
- Playwright: 1.58.0
- JUnit: 5.10.1
- Guice: 7.0.0
Структура проекта
src/test/java/ru/kovbasa/tests— тесты по сценариям.src/test/java/ru/kovbasa/pages— page-объекты.src/test/java/ru/kovbasa/playwright— фикстуры Playwright.src/test/java/ru/kovbasa/config— DI и Guice extension.traces/— zip-трейсы по каждому тесту.traces.zip— архив для сдачи.
Команды запуска
PowerShell:
# все тесты
mvn test
# один тест
mvn "-Dtest=ru.kovbasa.tests.CatalogFiltersTest" test
# параметры запуска
mvn "-Dheadless=false" "-Dbrowser=chromium" "-DbaseUrl=https://otus.ru" test
Bash:
# все тесты
mvn test
# один тест
mvn -Dtest=ru.kovbasa.tests.CatalogFiltersTest test
# параметры запуска
mvn -Dheadless=false -Dbrowser=chromium -DbaseUrl=https://otus.ru test
Доступные браузеры: chromium, firefox, webkit.
Полезные параметры:
-Dheadless=false— запуск в UI.-DslowMo=200— замедление действий.-DtimeoutMs=40000— таймауты ожиданий.
Трейсы
Трейсы автоматически сохраняются в каталог traces/ в виде zip-файлов по каждому тесту.
Архив traces.zip расположен в корне проекта.
PowerShell:
Compress-Archive -Path traces\* -DestinationPath traces.zip -Force
Bash:
zip -r traces.zip traces
Проверка качества
PowerShell/Bash:
mvn verify
Description
Languages
Java
100%