docs: add testing + release checklist; fix contributing links

This commit is contained in:
Abhimanyu Saharan
2026-02-11 22:52:47 +00:00
committed by Abhimanyu Saharan
parent 1fdacec7c1
commit e477cffe7e
5 changed files with 195 additions and 8 deletions

View File

@@ -1,3 +1,82 @@
# Testing guide
# Testing
Placeholder: see root `README.md` and `CONTRIBUTING.md` for current commands.
This guide describes how to run Mission Control tests locally.
## Quick start (repo root)
```bash
make setup
make check
```
`make check` is the closest thing to “CI parity”:
- backend: lint + typecheck + unit tests (with scoped coverage gate)
- frontend: lint + typecheck + unit tests (Vitest) + production build
## Backend tests
From repo root:
```bash
make backend-test
make backend-coverage
```
Or from `backend/`:
```bash
cd backend
uv run pytest
```
Notes:
- Some tests may require a running Postgres (see root `compose.yml`).
- `make backend-coverage` enforces a strict coverage gate on a scoped set of modules.
## Frontend tests
From repo root:
```bash
make frontend-test
```
Or from `frontend/`:
```bash
cd frontend
npm run test
npm run test:watch
```
## End-to-end (Cypress)
The frontend has Cypress configured in `frontend/cypress/`.
Typical flow:
1) Start the stack (or start backend + frontend separately)
2) Run Cypress
Example (two terminals):
```bash
# terminal 1
cp .env.example .env
docker compose -f compose.yml --env-file .env up -d --build
```
```bash
# terminal 2
cd frontend
npm run e2e
```
Or run interactively:
```bash
cd frontend
npm run e2e:open
```