/
Dev42
/
GitVerseTest
ОбзорДокументацияВойти
/
Dev42
/
GitVerseTest
Код
Запросы
2
Задачи
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
ДокументацияПоддержка
Политика конфиденциальностиПользовательское соглашениеПолитика использования «cookies»Согласие субъекта персональных данных
2026 ©
qa/acceptance.csv
81 строка19 KB

AlexPikalov

Обновление границ MVP
25 мар 2026, 14:49
25 мар 2026, 14:49a7fa675
77 строк
AC-01
Данные
Импорт work_centers.csv
1. Загрузить файл /data/C22/T1/work_centers.csv в 1С;2. Нажать «Проверить целостность»
0 ошибок валидации; 6–10 записей в справочнике РЦ
/data/C22/T1/work_centers.csv
AC-02
Данные
Импорт orders.csv
1. Загрузить файл /data/C22/T1/orders.csv;2. Проверить ссылки на заказы
0 ошибок; 30–60 записей в регистре заказов
/data/C22/T1/orders.csv
AC-03
Данные
Импорт operations.csv
1. Загрузить файл /data/C22/T1/operations.csv;2. Проверить FK на order_id и wc_id
0 ошибок; 150–300 записей в регистре операций
/data/C22/T1/operations.csv
AC-04
Данные
Импорт calendar.csv
1. Загрузить файл /data/C22/T1/calendar.csv;2. Проверить формат дат
0 ошибок; 60–90 дней в календаре
/data/C22/T1/calendar.csv
AC-05
Валидация
wc_id существует
1. Загрузить /data/C22/invalid/wc_missing.csv;2. Запустить проверку целостности
Ошибка: «РЦ {wc_id} не найден в справочнике»
/data/C22/invalid/wc_missing.csv
AC-06
Валидация
duration_hours > 0
1. Загрузить /data/C22/invalid/duration_zero.csv;2. Запустить проверку целостности
Ошибка: «Длительность операции должна быть > 0»
/data/C22/invalid/duration_zero.csv
AC-07
Валидация
Только рабочие дни
1. Загрузить данные с операциями на выходные;2. Запустить расчёт плана
Ошибка: «Дата {date} — выходной; планирование запрещено»
/data/C22/invalid/weekend_op.csv
AC-08
Валидация
Порядок seq_no
1. Загрузить /data/C22/invalid/seq_no_order.csv;2. Запустить проверку целостности
Ошибка: «Нарушен порядок операций в заказе {order_id}»
/data/C22/invalid/seq_no_order.csv
AC-09
Валидация
Перегрузка РЦ
1. Загрузить данные с превышением мощности;2. Запустить расчёт плана
Установлен флаг overload_flag = true для дней с перегрузкой
/data/C22/invalid/overload.csv
AC-10
1С
Расчёт мастер-плана
1. Импортировать все 4 CSV из T1;2. Открыть отчёт «План-график и загрузка»; . Нажать «Рассчитать план»
План сформирован за ≤5 сек; все операции размещены
/docs/demo_script.md (Шаг 2)
AC-11
1С
Отсутствие перегрузок в плане
1. Сформировать план на T1;2. Открыть отчёт с фильтром overload_flag = true
0 строк с перегрузкой (overload_flag = false для всех дней)
/data/C22/golden/load.csv
AC-12
1С
Экспорт плана в CSV
1. В отчёте нажать «Экспорт → CSV»;2. Сохранить как plan_export.csv; . Сравнить с эталоном
Файл совпадает с /golden/load.csv (±1% округления)
/data/C22/golden/load.csv
AC-13
KPI
Доля заказов в срок ≥80%
1. Открыть отчёт «Анализ выполнения»;2. Указать период расчёта
on_time_rate ≥ 80% (заказы_в_срок / все_заказы × 100%)
/data/C22/golden/on_time.csv
AC-14
KPI
Перегрузки РЦ = 0%
1. В отчёте «План-график» включить фильтр по перегрузкам;2. Рассчитать долю дней с перегрузкой
overload_rate = 0% (дни_с_перегрузкой / все_дни × 100%)
/data/C22/golden/load.csv
AC-15
1С
Фильтры в отчёте
1. Открыть отчёт «План-график и загрузка»;2. Применить фильтры: период; РЦ; заказ; приоритет
Отчёт обновляется корректно; строки соответствуют фильтрам
Скриншот отчёта с фильтрами
AC-16
1С
Алгоритм планирования (приоритеты)
1. Загрузить данные с разными приоритетами;2. Запустить расчёт; . Проверить порядок операций
Заказы с priority=1 планируются раньше priority=2 и priority=3
/docs/TZ.md (FR-03)
AC-17
1С
Идемпотентность импорта
1. Импортировать одни и те же CSV дважды;2. Проверить количество записей
Количество записей не удваивается; дубли не создаются
/qa/idempotency_check.md
AC-18
1С
Производительность расчёта
1. Загрузить T2 (расширенный набор);2. Запустить расчёт плана
Время формирования плана ≤5 сек для ≥300 операций
/qa/performance_log.csv
AC-19
1С
Формат экспортного CSV
1. Экспортировать план;2. Проверить структуру файла
Поля: date; wc_id; load_hours; capacity_hours; overload_flag; кодировка UTF-8; разделитель
/qa/export_format_check.md
AC-20
Демо
Сценарий демо (5 шагов)
1. Выполнить все 5 шагов из демо-сценария;2. Зафиксировать результаты
Все шаги выполнены успешно; KPI достигнуты
/docs/demo_script.md + видео 3–5 мин
AC-21
Backend API
GET /api/v1/load
1. Отправить запрос с start_date/end_date;2. Проверить ответ
JSON соответствует openapi.yaml; 200 OK
/mocks/openapi.yaml + скриншот Postman
AC-22
Backend API
POST /api/v1/plan
1. Отправить order_ids;2. Проверить статус;201 Created; plan_id возвращён
/mocks/openapi.yaml + скриншот Postman
AC-23
Backend API
GET /api/v1/kpi
1. Запросить метрики;2. Проверить поля
on_time_rate и overload_rate в ответе (не on_time_percentage)
/mocks/openapi.yaml + скриншот Postman
AC-24
Backend API
JWT-авторизация
1. POST /api/v1/auth/login;2. Использовать токен
Токен получен; защищённые эндпоинты доступны
/qa/auth_test.md
AC-25
Backend API
Валидация входных данных
1. Отправить некорректный запрос;2. Проверить ошибку
400 Bad Request; понятное сообщение об ошибке
/qa/api_validation.md
AC-26
Backend API
CORS настройки
1. Запрос с frontend (localhost:3000);2. Проверить заголовки
CORS разрешён; нет ошибок в консоли браузера
/qa/cors_test.md
AC-27
Backend API
Время отклика API
1. Замерить 10 запросов;2. Посчитать среднее
≤500 мс (95-й перцентиль)
/qa/performance_api.csv
AC-28
Backend API
Swagger-документация
1. Открыть /docs;2. Проверить эндпоинты
Все 4 эндпоинта отображаются; можно тестировать
http://localhost:8000/docs
AC-29
Backend API
Обработка ошибок 1С
1. Отключить 1С;2. Вызвать /api/v1/plan
503 Service Unavailable; понятное сообщение
/qa/error_handling.md
AC-30
Backend API
Логирование запросов
1. Выполнить 5 запросов;2. Проверить логи
Все запросы записаны (уровень INFO)
/logs/api.log
AC-31
Frontend
Главная страница (Dashboard)
1. Открыть localhost:3000;2. Проверить компоненты
Все компоненты отображаются; нет ошибок в консоли
Скриншот dashboard
AC-32
Frontend
Таблица с планом-графиком
1. Загрузить данные;2. Проверить колонки
Поля: date; wc_id; load_hours; capacity_hours; overload_flag
Скриншот таблицы
AC-33
Frontend
KPI-виджет
1. Открыть dashboard;2. Проверить метрики
on_time_rate и overload_rate отображаются; значения корректны
Скриншот KPI
AC-34
Frontend
Фильтры (период; РЦ; заказ)
1. Применить фильтры;2. Проверить таблицу
Таблица обновляется; строки соответствуют фильтрам
Скриншот фильтров
AC-35
Frontend
Форма авторизации
1. Открыть /login;2. Войти (admin/admin)
Перенаправление на dashboard; токен сохранён
Скриншот login
AC-36
Frontend
Адаптивность (≥1280px)
1. Изменить размер окна;2. Проверить вёрстку
Нет горизонтальной прокрутки; элементы не накладываются
Скриншоты 3 разрешений
AC-37
Frontend
Обработка ошибок API
1. Отключить backend;2. Нажать «Загрузить»
Сообщение пользователю; нет «белого экрана»
Скриншот ошибки
AC-38
Frontend
Кнопка «Рассчитать план»
1. Нажать кнопку;2. Проверить вызов API
POST /api/v1/plan вызван; индикатор загрузки показан
Скриншот + консоль
AC-39
Frontend
Кнопка «Экспорт CSV»
1. Нажать кнопку;2. Проверить файл
Файл скачан; структура соответствует AC-19
Скриншот + файл
AC-40
Frontend
Роутинг между страницами
1. Перейти Dashboard → Login → Dashboard;2. Проверить URL
URL меняется; состояние сохраняется
Скриншот навигации
AC-41
Интеграция
Frontend → Backend → 1С (расчёт)
1. Нажать «Рассчитать план» на frontend;2. Проверить 1С
1С получил запрос; расчёт выполнен; результат возвращён
Скриншоты всех 3 уровней
AC-42
Интеграция
Синхронизация данных (1С → Backend)
1. Импортировать CSV в 1С;2. Проверить БД
Данные появились в PostgreSQL; поля соответствуют
Скриншот БД + 1С
AC-43
Интеграция
KPI на frontend = KPI в 1С
1. Посмотреть KPI на сайте;2. Сравнить с 1С
Расхождение ≤1% (округления)
Скриншот frontend + 1С
AC-44
Интеграция
Фильтры frontend влияют на Backend
1. Применить фильтр на сайте;2. Проверить API-запрос
Параметры переданы в backend; ответ отфильтрован
Консоль браузера + логи backend
AC-45
Интеграция
Полный сценарий (E2E)
1. Войти → Загрузить → Рассчитать → Экспорт;2. Проверить результат
Все шаги успешны; данные согласованы
Видео демо (3–5 мин)
AC-46
Демо W6
Импорт данных (T1)
1. Загрузить 4 CSV в 1С;2. Проверить валидацию
0 ошибок; все записи импортированы
Скриншот импорта
AC-47
Демо W7
Backend API (Postman)
1. Протестировать 4 эндпоинта;2. Проверить ответы
Все эндпоинты возвращают 200/201
Скриншот Postman-коллекции
AC-48
Демо W7
Frontend (локально)
1. Запустить npm run dev;2. Открыть localhost:3000
Все компоненты работают; API вызовы успешны
Скриншот браузера
AC-49
Демо W8
Интеграция (полная)
1. Frontend → Backend → 1С;2. Проверить поток данных
Данные проходят через все 3 слоя
Видео + логи
AC-50
Демо W8
Защита проекта
1. Презентация (7–10 мин);2. Вопросы (3–5 мин)
Все артефакты показаны; KPI достигнуты
Презентация + видео + релиз v1.0
Old version
AC_id
Что проверить
Как проверить
Ожидаемый результат
Источник/Доказательство
AC-01
Импорт work_centers.csv
1. Загрузить файл /data/C22/T1/work_centers.csv в 1С;2. Нажать «Проверить целостность»
0 ошибок валидации; 6–10 записей в справочнике РЦ
/data/C22/T1/work_centers.csv
AC-02
Импорт orders.csv
1. Загрузить файл /data/C22/T1/orders.csv;2. Проверить ссылки на заказы
0 ошибок; 30–60 записей в регистре заказов
/data/C22/T1/orders.csv
AC-03
Импорт operations.csv
1. Загрузить файл /data/C22/T1/operations.csv;2. Проверить FK на order_id и wc_id
0 ошибок; 150–300 записей в регистре операций
/data/C22/T1/operations.csv
AC-04
Импорт calendar.csv
1. Загрузить файл /data/C22/T1/calendar.csv;2. Проверить формат дат
0 ошибок; 60–90 дней в календаре
/data/C22/T1/calendar.csv
AC-05
Валидация: wc_id существует
1. Загрузить /data/C22/invalid/wc_missing.csv;2. Запустить проверку целостности
Ошибка: «РЦ {wc_id} не найден в справочнике»
/data/C22/invalid/wc_missing.csv
AC-06
Валидация: duration_hours > 0
1. Загрузить /data/C22/invalid/duration_zero.csv;2. Запустить проверку целостности
Ошибка: «Длительность операции должна быть > 0»
/data/C22/invalid/duration_zero.csv
AC-07
Валидация: только рабочие дни
1. Загрузить данные с операциями на выходные;2. Запустить расчёт плана
Ошибка: «Дата {date} — выходной; планирование запрещено»
/data/C22/invalid/weekend_op.csv
AC-08
Валидация: порядок seq_no
1. Загрузить /data/C22/invalid/seq_no_order.csv;2. Запустить проверку целостности
Ошибка: «Нарушен порядок операций в заказе {order_id}»
/data/C22/invalid/seq_no_order.csv
AC-09
Валидация: перегрузка РЦ
1. Загрузить данные с превышением мощности;2. Запустить расчёт плана
Установлен флаг overload_flag = true для дней с перегрузкой
/data/C22/invalid/overload.csv
AC-10
Расчёт мастер-плана
1. Импортировать все 4 CSV из T1;2. Открыть отчёт «План-график и загрузка»; . Нажать «Рассчитать план»
План сформирован за ≤5 сек; все операции размещены
/docs/demo_script.md (Шаг 2)
AC-11
Отсутствие перегрузок в плане
1. Сформировать план на T1;2. Открыть отчёт с фильтром overload_flag = true
0 строк с перегрузкой (overload_flag = false для всех дней)
/data/C22/golden/load.csv
AC-12
Экспорт плана в CSV
1. В отчёте нажать «Экспорт → CSV»;2. Сохранить как plan_export.csv; . Сравнить с эталоном
Файл совпадает с /golden/load.csv (±1% округления)
/data/C22/golden/load.csv
AC-13
KPI: доля заказов в срок ≥80%
1. Открыть отчёт «Анализ выполнения»;2. Указать период расчёта
on_time_rate ≥ 80% (заказы_в_срок / все_заказы × 100%)
/data/C22/golden/on_time.csv
AC-14
KPI: перегрузки РЦ = 0%
1. В отчёте «План-график» включить фильтр по перегрузкам;2. Рассчитать долю дней с перегрузкой
overload_rate = 0% (дни_с_перегрузкой / все_дни × 100%)
/data/C22/golden/load.csv
AC-15
Фильтры в отчёте
1. Открыть отчёт «План-график и загрузка»;2. Применить фильтры: период; РЦ; заказ; приоритет
Отчёт обновляется корректно; строки соответствуют фильтрам
Скриншот отчёта с фильтрами
AC-16
Алгоритм планирования (приоритеты)
1. Загрузить данные с разными приоритетами;2. Запустить расчёт; . Проверить порядок операций
Заказы с priority=1 планируются раньше priority=2 и priority=3
/docs/TZ_v0.9.md (FR-03)
AC-17
Идемпотентность импорта
1. Импортировать одни и те же CSV дважды;2. Проверить количество записей
Количество записей не удваивается; дубли не создаются
/qa/idempotency_check.md
AC-18
Производительность расчёта
1. Загрузить T2 (расширенный набор);2. Запустить расчёт плана
Время формирования плана ≤5 сек для ≥300 операций
/qa/performance_log.csv
AC-19
Формат экспортного CSV
1. Экспортировать план;2. Проверить структуру файла
Поля: date; wc_id; load_hours; capacity_hours; overload_flag; кодировка UTF-8; разделитель
/qa/export_format_check.md
AC-20
Демо Шаг 1: Импорт данных
Импортировать /data/C22/T1/*.csv
4 файла загружены; 0 ошибок валидации
Скриншот импорта
AC-21
Демо Шаг 2: Расчёт плана
Открыть отчёт → нажать «Рассчитать план»
План сформирован за ≤5 сек
Скриншот отчёта
AC-22
Демо Шаг 3: Фильтр по РЦ
Применить фильтр: РЦ=«Токарный №1»; период=март 2026
Отчёт содержит только отфильтрованные строки
Скриншот фильтра
AC-23
Демо Шаг 4: KPI
Открыть отчёт «Анализ выполнения»
on_time_rate ≥ 80%; overload_rate = 0%
Скриншот метрик
AC-24
Демо Шаг 5: Экспорт
Экспортировать plan_export.csv → сравнить с golden
Расхождение ≤1% (округления)
Скриншот сравнения
'''