Triatu Testing
Quick start
- TDD required: write test first, then code.
- Unit/integration: Vitest.
- E2E: Playwright under
tests/e2e.
Commands
pnpm test(Vitest)pnpm test:e2e(Playwright)pnpm exec playwright test --ui(interactive)pnpm exec playwright test --headed(visible browser)
Workflow
- Add stable
data-testidin UI for any e2e interaction. - Keep Vitest tests under
tests/,features/, orlib/. - Keep Playwright tests under
tests/e2e/only. - For e2e that touches Supabase, require:
NEXT_PUBLIC_SUPABASE_URLSUPABASE_SERVICE_ROLE_KEYNEXT_PUBLIC_E2E=true(if used)
- Clean up seeded data at the end of each e2e run.
References
docs/DEVELOPMENT.mdtests/README.md