test: add full-stack Playwright integration test infrastructure

Sprint 12 Phase 2: Real integration tests with seed DB
- R__seed_test_data.sql (Flyway repeatable, 7 members, strains, batches, docs, board, events)
- TestResetController (profile-gated per-test DB reset)
- docker-compose.test.yml (self-contained, tmpfs Postgres)
- Dockerfile.playwright (v1.60.0, pre-installed deps)
- 13 integration spec files, 70+ test cases (@smoke + @full)
- seed-constants.ts, selectors.ts, api-client.ts test helpers
This commit is contained in:
Patrick Plate
2026-06-18 14:43:16 +02:00
parent 6e25914074
commit 776149e7d3
25 changed files with 2127 additions and 39 deletions
@@ -0,0 +1,22 @@
# Integration Tests
Full-stack integration tests that run against a real backend + database.
## Running locally
```bash
docker compose -f docker-compose.test.yml -f docker-compose.test.local.yml up --build
```
## Running in CI
```bash
docker compose -f docker-compose.test.yml up --build --abort-on-container-exit
```
## Test Structure
- Each spec file tests one page/feature
- Tests use `data-testid` selectors from `../selectors.ts`
- Expected values come from `../seed-constants.ts`
- DB is reset before each test via `ApiClient.resetDb()`