# Test Stack Matrix ## Backend - Prefer the existing Python test runner and fixtures setup. - If the project is FastAPI and already uses `pytest`, extend `pytest` rather than introducing another runner. - Respect async testing patterns already present in the project. ## Frontend - Prefer the existing frontend test stack from `package.json`. - Typical unit and integration options: Vitest or Jest with Testing Library. - Typical UI or end-to-end options: Playwright when the project already uses it or clearly benefits from it. ## If the project has no test stack - Backend default: `pytest`. - Frontend default for React and Next.js component testing: Vitest plus Testing Library when compatible with the project. - End-to-end tests should be added only if they materially improve coverage and the project can support them. ## Execution principle - Run only the relevant suites for the change set when that is enough. - If the task is broad, run both backend and frontend suites or document what was not run.