docs: Playwright E2E gate (mock CI + IFT smoke) for FrontAdmin
This commit is contained in:
@@ -209,4 +209,12 @@
|
||||
- Traefik маршрутизирует домен `admin-ui.stage.eventhub.local` на контейнер.
|
||||
- Nginx внутри контейнера раздаёт статику и проксирует API-запросы (`/v1/` → `http://eventhub:8445`, `/admin/ws` → `http://eventhub:8446`), что позволяет избежать проблем с CORS и самоподписанными сертификатами.
|
||||
- WebSocket также проксируется через Nginx.
|
||||
- Makefile автоматизирует установку, сборку, запуск и очистку проекта.
|
||||
- Makefile автоматизирует установку, сборку, запуск и очистку проекта.
|
||||
|
||||
## 8. E2E (Playwright)
|
||||
|
||||
- Каркас: `playwright.config.ts`, каталог `e2e/`.
|
||||
- Контракт селекторов: `e2e/TESTIDS.md` (`data-testid` + a11y).
|
||||
- **Mock-suite** (`npm run test:e2e`): в CI после lint/build; route-моки `**/v1/admin/**`.
|
||||
- **IFT smoke** (`npm run test:e2e:ift`): login → shell → logout против IFT; secrets `E2E_ADMIN_*`; workflow `e2e-ift.yml` после Deploy IFT.
|
||||
- Coverage (mock): auth/roles, shell, inbox reports/tickets, reports/reviews CRUD-пути, explore users/calendars/events/subscriptions, banned-words, admins/audit/monitoring/profile, i18n.
|
||||
+11
-1
@@ -51,9 +51,11 @@
|
||||
| Репозиторий | Минимум |
|
||||
|-------------|---------|
|
||||
| EventHubBack | `make test` / `make eunit` / целевые API-тесты (см. §2.1 WSL) |
|
||||
| EventHubFrontAdmin | `npm run lint`, `npm run build` |
|
||||
| EventHubFrontAdmin | `npm run lint`, `npm run build`, **`npm run test:e2e`** (Playwright mock-suite) |
|
||||
| EventHubSpec | ревью текста, ссылки на код |
|
||||
|
||||
IFT smoke Admin UI (живой API после деплоя): `npm run test:e2e:ift` / workflow `e2e-ift.yml` — secrets `E2E_ADMIN_EMAIL`, `E2E_ADMIN_PASSWORD` (+ опц. `E2E_IFT_BASE_URL`). Контракт селекторов: `EventHubFrontAdmin/e2e/TESTIDS.md`.
|
||||
|
||||
---
|
||||
|
||||
## 2.1. Локальная разработка (WSL)
|
||||
@@ -195,6 +197,12 @@ Issue: https://git.sabilin.com/EventHub/EventHubBack/issues/24
|
||||
|
||||
IFT и stage крутят **одну и ту же** сборку `sha-*`. Product version из `VERSION` на деплой не влияет.
|
||||
|
||||
### E2E Admin UI (Playwright)
|
||||
|
||||
- **CI / PR:** `npm run test:e2e` — Chromium, API-моки (`e2e/mocks`), project `mock`.
|
||||
- **IFT smoke:** после успешного Deploy IFT — workflow `e2e-ift.yml` → `npm run test:e2e:ift` (без моков). Secrets: `E2E_ADMIN_EMAIL`, `E2E_ADMIN_PASSWORD`, опц. `E2E_IFT_BASE_URL`.
|
||||
- Селекторы: `data-testid` + a11y; контракт в `EventHubFrontAdmin/e2e/TESTIDS.md`.
|
||||
|
||||
---
|
||||
|
||||
## 4. Расширение правил
|
||||
@@ -220,6 +228,7 @@ IFT и stage крутят **одну и ту же** сборку `sha-*`. Produc
|
||||
- **Git commit/push — через WSL** (`~/.cursor/eventhub/git-commit.sh`, `git-push.sh`); **push — только после подтверждения пользователя** (см. §2.1).
|
||||
- Новая задача — **отдельный чат** с брифом по §5.
|
||||
- **Версии/деплой:** product = `VERSION` (`MAJOR.MINOR`); IFT+stage = `sha-*` (+ floating `:ift`/`:stage`); без ручных stage-тегов и без patch++ на каждый push (см. §6).
|
||||
- **FrontAdmin E2E:** mock-suite обязателен в CI; IFT smoke — после Deploy IFT (`e2e-ift.yml`, secrets `E2E_ADMIN_*`).
|
||||
|
||||
---
|
||||
|
||||
@@ -227,6 +236,7 @@ IFT и stage крутят **одну и ту же** сборку `sha-*`. Produc
|
||||
|
||||
| Дата | Изменение |
|
||||
|------|-----------|
|
||||
| 2026-07-14 | §6 + gate: Playwright E2E (mock CI + IFT smoke secrets) |
|
||||
| 2026-07-14 | §6: VERSION MAJOR.MINOR + auto stage по sha после CI |
|
||||
| 2026-07-07 | Git-скрипты Agent перенесены в `~/.cursor/eventhub/` (не в репозиториях) |
|
||||
| 2026-07-07 | §5: шаблон передачи контекста в новый чат |
|
||||
|
||||
Reference in New Issue
Block a user