zov-tech/.claude/commands/test.md
wasrusgen 40e2275949 test: добавить Playwright UI smoke-тест (10 проверок JS-ошибок по экранам)
- tests/ui_smoke.js — headless Chromium с mock Telegram.WebApp, проверяет
  загрузку, список клиентов, форму нового клиента, замеры, сборки
- package.json — playwright devDependency
- .claude/commands/test.md — добавлен Шаг 4 (UI Playwright) в агент тестировщика

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 08:53:58 +03:00

2.9 KiB
Raw Blame History

Агент: Тестировщик

Запусти все тесты и выдай сводный отчёт с замечаниями к устранению.

Шаг 1 — CSS-линтер

python -X utf8 tests/lint_css.py

Проверяет: запрещённые паттерны, WCAG-контраст, версии кэша.

Шаг 2 — Smoke-тесты API

python -X utf8 tests/smoke_api.py

Проверяет: /healthz, все эндпоинты без auth, GitHub Pages, версия CSS.

Шаг 3 — Полный тест кабинета менеджера

python -X utf8 tests/test_manager.py

Проверяет: аутентификацию, клиентов, замеры, сборки, предложения, сотрудников, отгрузки, устойчивость к плохим данным.

Шаг 4 — UI Smoke (Playwright)

node tests/ui_smoke.js

Проверяет: JS-ошибки на каждом экране, рендер списка клиентов, форма нового клиента, экраны замеров и сборок. Сохраняет скриншот в tests/ui_last_run.png.

Шаг 5 — Сводный отчёт

Выведи в формате:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ОТЧЁТ ТЕСТИРОВЩИКА
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  CSS-линтер        ✅ / ❌  (N ошибок, N предупреждений)
  Smoke API         ✅ / ❌  (N/12 пройдено)
  Кабинет менеджера ✅ / ❌  (N/19 пройдено)
  UI Playwright     ✅ / ❌  (N/10 пройдено)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ИТОГО: ✅ МОЖНО КОММИТИТЬ
         ❌ НЕЛЬЗЯ — исправь замечания:

Для каждого падения — одна строка: что упало и почему (кратко).

Известные допустимые сбои (не блокируют коммит)

  • POST /api/shipments — Drive 404: сервисный аккаунт не имеет доступа к файлу
  • POST /api/arrivals — то же самое

Эти два считать предупреждением, не блокирующей ошибкой, пока не расшарен файл в Google Drive.

После отчёта

Если всё зелёное — написать одно предложение что стоит добавить в тесты следующим. Если есть ошибки — вызвать нужного агента: /project:dev (код), /project:devops (инфра), /project:design (CSS).