projects/org/@biz-lideravto/it/testing/GUIDE-testing.md

TEST PLAN — lideravto-new

Фаза: 10. Тестирование
Дата: 2026-02-14
Версия: 1.0.0


← Назад в оглавление


Цели тестирования

Главная цель

Убедиться что все 9 кастомных модулей работают корректно и готовы к импорту данных.

Критерии готовности


Типы тестирования

1. Unit тесты (PHPUnit)

Статус: ✅ 205/205 passed

Расположение: it/lider-drupal/app/modules/custom/*/tests/

Команда:

cd it/lider-drupal/app/modules/custom/
phpunit

Покрытие: 100% (все модули)


2. Функциональное тестирование (ручное)

Цель: Проверить работу модулей в реальных условиях.

Приоритеты:
- 🔴 Высокий — критичные функции (каталог, совместимость)
- 🟡 Средний — важные функции (импорт, запчасти)
- 🟢 Низкий — вспомогательные (SEO, setup)


3. Интеграционное тестирование

Цель: Проверить взаимодействие модулей между собой.

Связи:

dru_lider_setup
    ↓
dru_lider_catalog ← dru_lider_models
    ↓                      ↓
dru_lider_products   dru_lider_parts
    ↓                      ↓
    └─→ dru_lider_compatibility ←┘

Тест-кейсы по модулям

🔴 dru_lider_catalog (284 KB)

Назначение: Каталог товаров (Categories, Products)

TC-CAT-001: Создание категории

Шаги:
1. Открыть админ-панель Drupal
2. Structure → Taxonomy → Categories
3. Создать категорию "Кабина"
4. Сохранить

Ожидаемый результат:
- Категория создана
- Отображается в списке
- URL сгенерирован автоматически

Приоритет: 🔴 Высокий


TC-CAT-002: Иерархия категорий (4 уровня)

Шаги:
1. Создать марку "Volvo" (уровень 1)
2. Создать модель "4-FH" с parent = Volvo (уровень 2)
3. Создать систему "Кабина" (уровень 3)
4. Создать товар "Амортизатор" в системе Кабина (уровень 4)

Ожидаемый результат:
- Иерархия: Volvo → 4-FH → Кабина → Амортизатор
- Breadcrumbs работают
- URL: /zapchasti/volvo/4-fh/kabina/amortizator-20499340/

Приоритет: 🔴 Высокий


TC-CAT-003: Отображение товаров в категории

Шаги:
1. Перейти на страницу категории "Подвеска"
2. Проверить отображение товаров

Ожидаемый результат:
- Список товаров загружается
- Grid layout (3-4 колонки)
- Фото, название, цена отображаются

Приоритет: 🔴 Высокий


🔴 dru_lider_models (120 KB)

Назначение: Модели грузовиков (Brand, Model, Modification)

TC-MOD-001: Создание бренда

Шаги:
1. Structure → Taxonomy → Brands
2. Создать бренд "Volvo"
3. Сохранить

Ожидаемый результат:
- Бренд создан
- Доступен для выбора в моделях

Приоритет: 🔴 Высокий


TC-MOD-002: Создание модели

Шаги:
1. Structure → Taxonomy → Models
2. Создать модель "FH4"
3. Выбрать бренд = Volvo
4. Указать платформу = "4-series"
5. Сохранить

Ожидаемый результат:
- Модель создана
- Связь с брендом работает
- Платформа сохранена

Приоритет: 🔴 Высокий


TC-MOD-003: Иерархия Brand → Model

Шаги:
1. Проверить список моделей для бренда Volvo
2. Убедиться что FH4 отображается под Volvo

Ожидаемый результат:
- Иерархия: Volvo → FH4
- Фильтрация по бренду работает

Приоритет: 🔴 Высокий


🔴 dru_lider_compatibility (64 KB)

Назначение: Матрица совместимости деталь-модель (M:N)

TC-COMP-001: Создание связи Product ↔ Model

Шаги:
1. Редактировать товар "Амортизатор"
2. В поле "Compatible Models" выбрать:
- Volvo FH4
- Volvo FM
3. Сохранить

Ожидаемый результат:
- Связи сохранены
- На карточке товара: "✓ Подходит для Volvo FH4, Volvo FM"

Приоритет: 🔴 Высокий


TC-COMP-002: Проверка совместимости

Шаги:
1. Открыть карточку товара "Амортизатор"
2. Проверить раздел "Совместимость"

Ожидаемый результат:
- Отображается список совместимых моделей
- Отображается "НЕ подходит для" (если есть несовместимые)

Приоритет: 🔴 Высокий


TC-COMP-003: Фильтрация по модели в каталоге

Шаги:
1. Открыть категорию "Амортизаторы"
2. Включить фильтр "Модель = Volvo FH4"
3. Проверить результаты

Ожидаемый результат:
- Показываются ТОЛЬКО товары совместимые с Volvo FH4
- Счётчик товаров корректен

Приоритет: 🔴 Высокий


🟡 dru_lider_importer (76 KB)

Назначение: Импорт товаров из CSV

TC-IMP-001: Импорт 10 товаров (тестовый CSV)

Подготовка:
1. Создать test.csv:

sku,title,oem,price,category,brand,model
TEST001,Амортизатор тестовый,20499340,5200,Подвеска,Volvo,FH4
TEST002,Турбина тестовая,123456,12000,Двигатель,MAN,TGX
...

Шаги:
1. Content → Import
2. Выбрать test.csv
3. Запустить импорт

Ожидаемый результат:
- 10 товаров импортировано
- Все поля заполнены корректно
- Связи с категориями и моделями работают

Приоритет: 🟡 Средний


TC-IMP-002: Обновление существующих товаров

Шаги:
1. Изменить цену TEST001 в CSV: 5200 → 5500
2. Повторный импорт
3. Проверить товар TEST001

Ожидаемый результат:
- Цена обновлена на 5500
- Остальные поля не изменились
- Дублирование не произошло (по SKU)

Приоритет: 🟡 Средний


🟡 dru_lider_parts (72 KB)

Назначение: Запчасти + доп. функционал

TC-PART-001: Создание запчасти

Шаги:
1. Content → Add content → Part
2. Заполнить поля:
- Название: "Амортизатор передний"
- OEM: "20499340"
- Категория: Подвеска
3. Сохранить

Ожидаемый результат:
- Запчасть создана
- OEM номер сохранён
- Связь с категорией работает

Приоритет: 🟡 Средний


🟡 dru_lider_products (16 KB)

Назначение: Расширение Commerce Product

TC-PROD-001: Создание Commerce Product

Шаги:
1. Commerce → Products → Add product
2. Заполнить:
- Title: "Амортизатор передний Volvo FH4"
- SKU: "BAZON-20499340"
- Price: 5200
3. Сохранить

Ожидаемый результат:
- Товар создан в Commerce
- Цена корректна
- SKU уникален

Приоритет: 🟡 Средний


🟢 dru_lider_seo (28 KB)

Назначение: SEO (мета-теги, redirects)

TC-SEO-001: Генерация мета-тегов

Шаги:
1. Открыть карточку товара "Амортизатор"
2. Проверить HTML

Ожидаемый результат:
- Title: "Амортизатор OEM 20499340 для Volvo FH4 | Лидер Авто"
- Description: заполнено автоматически
- OG-теги присутствуют

Приоритет: 🟢 Низкий


TC-SEO-002: ЧПУ (Clean URLs)

Шаги:
1. Проверить URL товара

Ожидаемый результат:
- URL: /zapchasti/volvo/4-fh/kabina/amortizator-20499340/
- БЕЗ: ?q=node/123

Приоритет: 🟢 Низкий


🟢 dru_lider_setup (20 KB)

Назначение: Настройка окружения

TC-SETUP-001: Проверка словарей

Шаги:
1. Structure → Taxonomy
2. Проверить наличие:
- Brands
- Models
- Systems
- Nodes

Ожидаемый результат:
- Все словари созданы
- Поля настроены

Приоритет: 🟢 Низкий


🟢 dru_lider_frontend (4 KB)

Назначение: Frontend компоненты

TC-FRONT-001: Проверка Mega Menu

Шаги:
1. Открыть главную страницу
2. Навести на "КАТАЛОГ"

Ожидаемый результат:
- Mega Menu открывается
- 3 колонки: Бренды | Системы | Популярное
- Ссылки работают

Приоритет: 🟢 Низкий


Интеграционные тест-кейсы

TC-INT-001: Полный цикл создания товара

Шаги:
1. Создать бренд "Scania"
2. Создать модель "R-series"
3. Создать категорию "Тормоза"
4. Создать товар "Тормозной диск Scania"
5. Добавить совместимость: Scania R-series
6. Проверить отображение в каталоге

Ожидаемый результат:
- Все связи работают
- Товар отображается в правильной категории
- Совместимость показывается корректно
- Фильтрация работает

Приоритет: 🔴 Высокий


TC-INT-002: Импорт → Совместимость → Каталог

Шаги:
1. Импортировать CSV с 10 товарами
2. Проверить что совместимость установлена
3. Проверить фильтрацию в каталоге

Ожидаемый результат:
- Импорт прошёл успешно
- Связи Product ↔ Model созданы
- Фильтры работают

Приоритет: 🔴 Высокий


Performance тесты

TC-PERF-001: Загрузка каталога (100 товаров)

Метрика: < 2 сек

Шаги:
1. Открыть категорию со 100 товарами
2. Измерить время загрузки (Chrome DevTools)

Ожидаемый результат:
- TTFB < 300ms
- Полная загрузка < 2 сек


TC-PERF-002: Поиск (1000 товаров)

Метрика: < 500ms

Шаги:
1. Ввести в поиск "амортизатор"
2. Измерить время ответа

Ожидаемый результат:
- Ответ < 500ms
- Релевантные результаты


Критерии приёмки

Минимальные требования (Must Have)

Желательные (Should Have)

Опциональные (Could Have)


План выполнения

Фаза 1: Unit тесты (10 минут)

cd it/lider-drupal/app/modules/custom/
phpunit

Ожидается: ✅ 205/205 passed


Фаза 2: Ручное тестирование (1.5 часа)

Порядок:
1. 🔴 Высокий приоритет (9 тест-кейсов)
2. 🟡 Средний приоритет (4 тест-кейса)
3. 🟢 Низкий приоритет (4 тест-кейса)

Инструмент: Браузер + ручная проверка


Фаза 3: Интеграционное (30 минут)

Тест-кейсы:
- TC-INT-001: Полный цикл
- TC-INT-002: Импорт → Совместимость → Каталог


Фаза 4: Performance (20 минут)

Тест-кейсы:
- TC-PERF-001: Загрузка каталога
- TC-PERF-002: Поиск


Фиксация результатов

Файл: testing/GUIDE-testing-results.md

Формат:

## Дата: YYYY-MM-DD

### TC-CAT-001: Создание категории
- Статус: ✅ Passed
- Комментарий: —

### TC-CAT-002: Иерархия категорий
- Статус: ❌ Failed
- Комментарий: Breadcrumbs не отображаются
- Bug: #001

Версия: 1.0.0

← Назад в оглавление