305 lines
11 KiB
JavaScript
Executable File
305 lines
11 KiB
JavaScript
Executable File
export const TEST_CHECKLIST_ITEMS = Object.freeze([
|
|
// Авторизация
|
|
{
|
|
key: "auth.register-email",
|
|
section: "Авторизация",
|
|
action: "Зарегистрироваться по email",
|
|
expectedResult: "Код приходит на почту, аккаунт создаётся",
|
|
},
|
|
{
|
|
key: "auth.login-password",
|
|
section: "Авторизация",
|
|
action: "Войти по паролю",
|
|
expectedResult: "Корректный пароль пускает, неправильный — ошибка",
|
|
},
|
|
{
|
|
key: "auth.oauth-vk",
|
|
section: "Авторизация",
|
|
action: "Войти через OAuth VK",
|
|
expectedResult: "Редирект на VK, callback, авторизация успешна",
|
|
},
|
|
{
|
|
key: "auth.oauth-yandex",
|
|
section: "Авторизация",
|
|
action: "Войти через OAuth Yandex",
|
|
expectedResult: "Редирект на Yandex, callback, авторизация успешна",
|
|
},
|
|
{
|
|
key: "auth.reset-password",
|
|
section: "Авторизация",
|
|
action: "Сбросить пароль",
|
|
expectedResult: "Письмо приходит, ссылка работает, пароль меняется",
|
|
},
|
|
{
|
|
key: "auth.logout",
|
|
section: "Авторизация",
|
|
action: "Выйти из аккаунта",
|
|
expectedResult: "Сессия очищается, редирект на страницу входа",
|
|
},
|
|
|
|
// Каталог и товары
|
|
{
|
|
key: "catalog.homepage",
|
|
section: "Каталог и товары",
|
|
action: "Открыть главную страницу",
|
|
expectedResult: "Слайдер грузится, товары отображаются",
|
|
},
|
|
{
|
|
key: "catalog.filters",
|
|
section: "Каталог и товары",
|
|
action: "Применить фильтры",
|
|
expectedResult: "Фильтры по категории, цене, материалам работают",
|
|
},
|
|
{
|
|
key: "catalog.product-page",
|
|
section: "Каталог и товары",
|
|
action: "Открыть страницу товара",
|
|
expectedResult: 'Фото, описание, цена, кнопка "В корзину" отображаются',
|
|
},
|
|
{
|
|
key: "catalog.seo",
|
|
section: "Каталог и товары",
|
|
action: "Проверить SEO-метаданные",
|
|
expectedResult: "Title, meta, slug корректные",
|
|
},
|
|
|
|
// Корзина
|
|
{
|
|
key: "cart.add",
|
|
section: "Корзина",
|
|
action: "Добавить товар в корзину",
|
|
expectedResult: "Счётчик корзины обновляется",
|
|
},
|
|
{
|
|
key: "cart.change-qty",
|
|
section: "Корзина",
|
|
action: "Изменить количество товара",
|
|
expectedResult: "Сумма пересчитывается",
|
|
},
|
|
{
|
|
key: "cart.remove",
|
|
section: "Корзина",
|
|
action: "Удалить товар из корзины",
|
|
expectedResult: "Товар убирается, сумма пересчитывается",
|
|
},
|
|
|
|
// Чекаут
|
|
{
|
|
key: "checkout.address",
|
|
section: "Чекаут",
|
|
action: "Выбрать адрес доставки",
|
|
expectedResult: "Можно выбрать из сохранённых или добавить новый",
|
|
},
|
|
{
|
|
key: "checkout.delivery",
|
|
section: "Чекаут",
|
|
action: "Выбрать способ доставки",
|
|
expectedResult: "Почта, OZON, Яндекс, 5post — доступны",
|
|
},
|
|
{
|
|
key: "checkout.payment",
|
|
section: "Чекаут",
|
|
action: "Выбрать способ оплаты",
|
|
expectedResult: "Онлайн / при получении — доступны",
|
|
},
|
|
{
|
|
key: "checkout.comment",
|
|
section: "Чекаут",
|
|
action: "Добавить комментарий к заказу",
|
|
expectedResult: "Поле работает, текст сохраняется",
|
|
},
|
|
{
|
|
key: "checkout.create",
|
|
section: "Чекаут",
|
|
action: "Создать заказ",
|
|
expectedResult: "Заказ создаётся, статус DRAFT",
|
|
},
|
|
|
|
// Оплата
|
|
{
|
|
key: "payment.yookassa",
|
|
section: "Оплата",
|
|
action: "Оплатить через ЮKassa",
|
|
expectedResult: "Редирект на оплату, webhook обрабатывается",
|
|
},
|
|
{
|
|
key: "payment.status",
|
|
section: "Оплата",
|
|
action: "Проверить статус платежа",
|
|
expectedResult: "Статус обновляется после webhook",
|
|
},
|
|
|
|
// Профиль пользователя
|
|
{
|
|
key: "profile.avatar",
|
|
section: "Профиль пользователя",
|
|
action: "Управление аватаром",
|
|
expectedResult: "Загрузка, отображение, удаление работают",
|
|
},
|
|
{
|
|
key: "profile.settings",
|
|
section: "Профиль пользователя",
|
|
action: "Изменить настройки профиля",
|
|
expectedResult: "Email, имя, способы входа обновляются",
|
|
},
|
|
{
|
|
key: "profile.addresses",
|
|
section: "Профиль пользователя",
|
|
action: "Управление адресами",
|
|
expectedResult: "Добавление, редактирование, удаление, по умолчанию",
|
|
},
|
|
{
|
|
key: "profile.orders",
|
|
section: "Профиль пользователя",
|
|
action: "Просмотр заказов",
|
|
expectedResult: "Список, детали, статусы отображаются",
|
|
},
|
|
{
|
|
key: "profile.messages",
|
|
section: "Профиль пользователя",
|
|
action: "Сообщения по заказу",
|
|
expectedResult: "Отправка, получение, read state работают",
|
|
},
|
|
{
|
|
key: "profile.notifications",
|
|
section: "Профиль пользователя",
|
|
action: "Настройки уведомлений",
|
|
expectedResult: "Вкл/выкл каналов работают",
|
|
},
|
|
{
|
|
key: "profile.delete-account",
|
|
section: "Профиль пользователя",
|
|
action: "Удалить аккаунт",
|
|
expectedResult: "Данные удаляются",
|
|
},
|
|
|
|
// Админ — Товары
|
|
{
|
|
key: "admin-products.list",
|
|
section: "Админ — Товары",
|
|
action: "Открыть список товаров",
|
|
expectedResult: "Пагинация, поиск работают",
|
|
},
|
|
{
|
|
key: "admin-products.create",
|
|
section: "Админ — Товары",
|
|
action: "Создать товар",
|
|
expectedResult:
|
|
"Все поля сохраняются, фото загружаются, публикация работает",
|
|
},
|
|
{
|
|
key: "admin-products.edit",
|
|
section: "Админ — Товары",
|
|
action: "Редактировать товар",
|
|
expectedResult: "Изменения сохраняются",
|
|
},
|
|
{
|
|
key: "admin-products.delete",
|
|
section: "Админ — Товары",
|
|
action: "Удалить товар",
|
|
expectedResult: "Товар удаляется",
|
|
},
|
|
{
|
|
key: "admin-products.images",
|
|
section: "Админ — Товары",
|
|
action: "Управление изображениями товара",
|
|
expectedResult: "Добавление, сортировка, удаление работают",
|
|
},
|
|
|
|
// Админ — Категории
|
|
{
|
|
key: "admin-categories.crud",
|
|
section: "Админ — Категории",
|
|
action: "CRUD категорий",
|
|
expectedResult: "Создание, редактирование, удаление, сортировка работают",
|
|
},
|
|
|
|
// Админ — Заказы
|
|
{
|
|
key: "admin-orders.list",
|
|
section: "Админ — Заказы",
|
|
action: "Открыть список заказов",
|
|
expectedResult: "Фильтрация по статусу, внимание отображается",
|
|
},
|
|
{
|
|
key: "admin-orders.details",
|
|
section: "Админ — Заказы",
|
|
action: "Открыть детали заказа",
|
|
expectedResult: "Состав, статус, смена статуса работают",
|
|
},
|
|
{
|
|
key: "admin-orders.messages",
|
|
section: "Админ — Заказы",
|
|
action: "Ответить на сообщение заказа",
|
|
expectedResult: "Сообщение отправляется пользователю",
|
|
},
|
|
|
|
// Админ — Отзывы
|
|
{
|
|
key: "admin-reviews.list",
|
|
section: "Админ — Отзывы",
|
|
action: "Открыть список отзывов",
|
|
expectedResult: "Фильтрация pending/approved/rejected работает",
|
|
},
|
|
{
|
|
key: "admin-reviews.moderate",
|
|
section: "Админ — Отзывы",
|
|
action: "Модерировать отзыв",
|
|
expectedResult: "Approve/reject работают",
|
|
},
|
|
|
|
// Админ — Пользователи
|
|
{
|
|
key: "admin-users.list",
|
|
section: "Админ — Пользователи",
|
|
action: "Открыть список пользователей",
|
|
expectedResult: "Email, дата регистрации отображаются",
|
|
},
|
|
{
|
|
key: "admin-users.orders",
|
|
section: "Админ — Пользователи",
|
|
action: "Просмотр заказов пользователя",
|
|
expectedResult: "Заказы пользователя отображаются",
|
|
},
|
|
|
|
// Админ — Галерея
|
|
{
|
|
key: "admin-gallery.upload",
|
|
section: "Админ — Галерея",
|
|
action: "Управление галереей",
|
|
expectedResult: "Загрузка, удаление, использование в слайдере работают",
|
|
},
|
|
|
|
// Админ — Настройки
|
|
{
|
|
key: "admin-settings.notifications",
|
|
section: "Админ — Настройки",
|
|
action: "Настройки уведомлений админа",
|
|
expectedResult: "Email, telegram настраиваются",
|
|
},
|
|
|
|
// Инфо-страницы
|
|
{
|
|
key: "info.pages",
|
|
section: "Инфо-страницы",
|
|
action: "Открыть инфо-страницы",
|
|
expectedResult:
|
|
"Доставка, оплата, как заказать, статусы заказов отображаются",
|
|
},
|
|
{
|
|
key: "info.legal",
|
|
section: "Инфо-страницы",
|
|
action: "Открыть юридические страницы",
|
|
expectedResult:
|
|
"Политика конфиденциальности, условия использования отображаются",
|
|
},
|
|
|
|
// SSE / Realtime
|
|
{
|
|
key: "sse.notifications",
|
|
section: "SSE / Realtime",
|
|
action: "Проверить SSE-уведомления",
|
|
expectedResult: "Уведомления приходят в реальном времени",
|
|
},
|
|
]);
|