Files
EventHubFrontAdmin/e2e/TESTIDS.md
T

26 lines
818 B
Markdown

# E2E testid contract (EventHubFrontAdmin)
Селекторы: **`data-testid`** + a11y (`getByRole` / `getByLabel`) где имя стабильно.
## Naming
| Pattern | Example |
|---------|---------|
| `page-{name}` | `page-login`, `page-users`, `page-inbox-reports` |
| `nav-{slug}` | `nav-users` |
| `row-{id}` | dense list / DataTable rows |
| `row-activate-{id}` | dense list main click target |
| `{entity}-row-{id}` | inbox-specific (`report-row-*`) |
| `btn-{action}` | `btn-login`, `btn-save-profile` |
| `dialog-{name}` | `dialog-edit-user` |
| `filter-{name}` | `filter-users-search` |
| `menu-user` / `lang-ru` | avatar dropdown |
Helper: `src/lib/testid.ts`.
## Rules
- kebab-case; dynamic id = API entity id (or banned word)
- Prefer a11y for login fields
- Do not decorate decorative wrappers