b2a3bda01b691a80606290e453f28f6aeae60f1d
Backend:
- migration 003: add parent_id to tests table
- PUT /api/tests/{id}: edit in place if no attempts, create new version otherwise
- GET /api/tests: show only latest versions (no successor)
Frontend:
- TestForm: extracted reusable form component
- TestCreate: refactored to use TestForm
- TestEdit: full edit mode with pre-populated form, version redirect on new version
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
QA Test App — Система тестирования сотрудников клиники
Веб-приложение для проведения внутреннего тестирования сотрудников. Руководители подразделений создают тесты, назначают их сотрудникам, система фиксирует результаты.
Проект разрабатывается как мастер-класс для джуниор-разработчиков. История разработки — пошаговые запросы и решения — сохраняется в
DOC/ШАГИ/.
Формат тестирования
- Вопрос + минимум 3 варианта ответа (один или несколько правильных)
- Минимум 7 вопросов в тесте
- Случайный порядок вопросов при каждом прохождении
- Опциональный таймер на прохождение
- Порог зачёта задаётся автором теста (%)
Роли
| Роль | Возможности |
|---|---|
| HR-менеджер / Директор | Создаёт тесты, назначает всем сотрудникам клиники, видит все результаты |
| Руководитель подразделения | Создаёт тесты, назначает только своему отделу, видит результаты своего отдела |
| Сотрудник | Проходит назначенные тесты, видит свои результаты и ошибки |
Стек
| Слой | Технология |
|---|---|
| Backend | Python 3.12 + FastAPI + SQLAlchemy 2.0 + Alembic |
| База данных | PostgreSQL 16 |
| Frontend | React 18 + TypeScript + Vite + Ant Design + TanStack Query |
| Инфраструктура | Docker Compose + Nginx |
| Уведомления | Мессенджер MAX (Спринт 5) |
План спринтов
| Спринт | Содержание |
|---|---|
| 1 | Инфраструктура (Docker, FastAPI, React, PostgreSQL) + создание тестов |
| 2 | Прохождение теста + результаты и разбор ошибок |
| 3 | Трекер результатов |
| 4 | Авторизация, роли, подразделения, управление пользователями |
| 5 | Уведомления в MAX |
Документация
| Файл | Содержание |
|---|---|
DOC/ТЗ.md |
Техническое задание (v1.1) |
DOC/СТЕК.md |
Технологический стек с обоснованием |
DOC/СПРИНТЫ.md |
Детальный план спринтов с задачами |
DOC/ШАГИ/ |
История разработки шаг за шагом |
Запуск (после Спринта 1)
docker compose up --build
Приложение будет доступно на http://localhost.
Description
Приложение для тестирования сотрудников клиники методом один вопрос - до пяти ответов один из которых правильный. Сотрудник должен выбрать правильный вариант ответа
Languages
TypeScript
56%
Python
41.7%
Mako
0.8%
Dockerfile
0.7%
HTML
0.4%
Other
0.3%