Блок 1 — Навигация
1.1
Авторизация пользователей
✓ Выполнено
Форма входа с валидацией, JWT-токены, автоматический logout при истечении сессии.
| Что было | Что стало |
|---|---|
| Форма без валидации на клиенте | Валидация email-формата, минимум 6 символов пароля, показ ошибки |
Шаги ручной проверки
- 1Откройте example.com/login→ Форма с полями Email и Пароль
- 2Введите корректные данные, нажмите «Войти»→ Редирект на dashboard, имя пользователя в шапке
- 3Введите неверный пароль→ Сообщение «Неверный email или пароль»
Изменённые файлы
- components/auth/LoginForm.php
- assets/js/auth-validation.js
E2E тесты
PASSLogin form validates credentials
PASSLogin form shows error on invalid password
PASSLogin redirects to dashboard
1.2
Панель администратора
✓ Выполнено
Управление контентом через кастомную CMS. Табовый интерфейс для редактирования секций.
Админка→Страницы→Главная
| Поле | Описание |
|---|---|
| Заголовок | Основной заголовок страницы (H1) |
| Описание | Текст под заголовком, до 200 символов |
| Изображение | Фоновое фото (рекомендуемый размер: 1920×600) |
Совет: После сохранения изменений обновите кэш браузера (
Ctrl+Shift+R) для просмотра результата.
1.3
Восстановление пароля
⚠ Частично
Форма «Забыли пароль?» отправляет ссылку на email, но шаблон письма не настроен.
Внимание: Письмо приходит со стандартным шаблоном WordPress. Нужно заменить на фирменный шаблон.
E2E тесты
PASSPassword reset form submits
SKIPPassword reset email template (manual)
Блок 2 — Каталог
2.1
Фильтр по параметрам
✓ Выполнено
Фильтр должен реально фильтровать товары по цене, цвету и другим параметрам.
| Что было | Что стало |
|---|---|
Обработчики для COLOR_B конфликтовали |
Удалены устаревшие обработчики, стандартный фильтр работает |
E2E тесты
PASSfilter-price.spec.ts — фильтр по цене (18 → 8)
PASSfilter-price.spec.ts — фильтр по цвету
2.2
Карточка товара
✓ Выполнено
Название = АРТИКУЛ + ЦВЕТ + ФАКТУРА. Цена отображается корректно.
Ру��ная проверка
- 1Открыть карточку товара→ H1 начинается с артикула (цифры)
- 2Проверить цену→ Формат «XX XXX ₽»
PASSproduct-name-format.spec.ts — формат артикула
PASSproduct-price-display.spec.ts — цена видна
2.3
Поиск по каталогу
✗ Ошибка
Поиск возвращает 500 ошибку при запросе с кириллицей.
Ошибка:
mb_strtolower() вызывается без проверки кодировки. Нужно добавить 'UTF-8' вторым аргументом.E2E тесты
FAILsearch-results.spec.ts — поиск «сумка» (500 error)
PASSsearch-results.spec.ts — поиск «bag» (EN)
Блок 3 — Доступ
3.1
Учётные данные
Доступ к панели управления сайтом.
| URL | https://example.com/admin/ |
| Логин | admin |
| Пароль | SecurePass123 |
Сводка E2E тестов
| Тестовый файл | Статус | Тесты |
|---|---|---|
| login-form.spec.ts | PASS | 3/3 |
| filter-price.spec.ts | PASS | 2/2 |
| product-name-format.spec.ts | PASS | 2/2 |
| product-price-display.spec.ts | PASS | 2/2 |
| search-results.spec.ts | FAIL | 1/2 |
| password-reset.spec.ts | SKIP | 1/2 |
| Итого | PASS | 11/13 |
Результат: 12 из 15 задач выполнено, 2 частично, 1 с ошибкой. 11 из 13 E2E тестов пройдены.