food-market/tests/e2e/scenarios/full-chain.yml
nns 886cb92f30 test(e2e): сквозной сценарий full-chain «жизнь магазина» + харнес со скриншотами
16 шагов против настоящего стенда: регистрация→справочники→сотрудники/точки→
деньги→3 приёмки→оплаты→смена/продажи/возврат/Z→склад→отчёты→инварианты→откат.
Сверяет конкретные числа и инварианты, 0×5xx/0×тостов/0×console.error. Режимы
C (temp-орг) и B (Демо на реальном каталоге). Hi-res скриншоты каждого процесса +
галерея. Включён в nightly-verify и quality-watchdog (скрипты в $HOME).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 02:10:11 +05:00

46 lines
3.9 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: full-chain
description: |
Жизнь магазина от регистрации до отчётов — сквозной прогон ВСЕХ процессов
простого режима через настоящий стенд. Каждый шаг сверяет конкретные ЧИСЛА
(ожидаемое считает сам тест) и инварианты; фиксирует 0×5xx / 0×error-тостов /
0×console.error на UI-шагах. Режим C (temp-org через signup) по умолчанию;
режим B (FULLCHAIN_TARGET=demo) — на «Демо-магазине» на реальном каталоге.
preconditions:
reset_db: false
smoke_login_super_admin: false
steps:
- id: step01_register_and_login
title: "Регистрация организации → вход владельцем → простой режим (скрытые модули 403)"
- id: step02_catalog_and_supplier
title: "Справочники — группа, 5 товаров (разные ед.изм., 1 весовой) + цены + штрихкоды; поставщик"
- id: step02a_employees_and_points
title: "Сотрудники (кассир/кладовщик/админ) + 2 точки продаж; права (API 403); правка/пароль/блокировка"
- id: step03_money_accounts
title: "Деньги — касса, банковский счёт (номер), эквайринг; начальные остатки"
- id: step04_initial_supplier_debt
title: "Начальный долг поставщику через корректировку взаиморасчётов (WeOwe) → долг = сумме"
- id: step05_supply1_manual
title: "Приёмка №1 вручную (кладовщик) → провести → остатки +кол-во; себестоимость"
- id: step06_supply2_excel
title: "Приёмка №2 из табличной накладной (поставщик не указан → «Поставщик не указан») → провести"
- id: step07_supply3_photo
title: "Приёмка №3 по фото-накладной → ручное сопоставление → провести; снимки удалены с диска"
- id: step08_supplier_payments
title: "Оплата — №1 частично нал из кассы, №2 полностью с банка; статусы + долг = формуле"
- id: step09_cashier_shift
title: "Смена — размен, 3 продажи (нал/карта/смеш), oversell→отказ, возврат, внесение/выплата, закрытие с расхождением + Z; продажа без смены→отказ"
- id: step09a_points_binding
title: "Привязка кассира к точкам; параллельные смены на 2 точках не смешивают деньги; продажа на неактивной→отказ"
- id: step10_warehouse_ops
title: "Склад — оприходование излишка, списание брака, инвентаризация CSV (часть товаров): непосчитанные не обнулены"
- id: step11_reports
title: "Отчёты — продажи за день, прибыль, остатки на дату, «Деньги», долги; по точкам/кассирам"
- id: step12_invariants
title: "Инварианты — остаток≡Σдвижений; счёт≡начальный+Σопераций; долг≡формуле; изоляция орг"
- id: step13_cancel_rollback
title: "Отмена/откат — отмена приёмки с проданным товаром→отказ; отмена платежа→долг вернулся"
- id: step14_finalize
title: "Финал — скриншоты ключевых экранов, деактивация e2e-сущностей (режим B)"