--- title: "How to Set Up a Test Framework" description: How to set up a production-ready test framework using TEA --- Use TEA's `*framework` workflow to scaffold a production-ready test framework for your project. --- ## When to Use This - No existing test framework in your project - Current test setup isn't production-ready - Starting a new project that needs testing infrastructure - Phase 3 (Solutioning) after architecture is complete --- ## Prerequisites - BMad Method installed - Architecture completed (or at least tech stack decided) - TEA agent available --- ## Steps ### 1. Load the TEA Agent Start a fresh chat and load the TEA (Test Architect) agent. ### 2. Run the Framework Workflow ``` *framework ``` ### 3. Answer TEA's Questions TEA will ask about: - Your tech stack (React, Node, etc.) - Preferred test framework (Playwright, Cypress, Jest) - Testing scope (E2E, integration, unit) - CI/CD platform (GitHub Actions, etc.) ### 4. Review Generated Output TEA generates: - **Test scaffold** - Directory structure and config files - **Sample specs** - Example tests following best practices - **`.env.example`** - Environment variable template - **`.nvmrc`** - Node version specification - **README updates** - Testing documentation --- ## What You Get ``` tests/ ├── e2e/ │ ├── example.spec.ts │ └── fixtures/ ├── integration/ ├── unit/ ├── playwright.config.ts # or cypress.config.ts └── README.md ``` --- ## Optional: Playwright Utils Integration TEA can integrate with `@seontechnologies/playwright-utils` for advanced fixtures: ```bash npm install -D @seontechnologies/playwright-utils ``` Enable during BMad installation or set `tea_use_playwright_utils: true` in config. **Utilities available:** api-request, network-recorder, auth-session, intercept-network-call, recurse, log, file-utils, burn-in, network-error-monitor --- ## Optional: MCP Enhancements TEA can use Playwright MCP servers for enhanced capabilities: - `playwright` - Browser automation - `playwright-test` - Test runner with failure analysis Configure in your IDE's MCP settings. --- ## Tips - Run `*framework` only once per repository - Run after architecture is complete so framework aligns with tech stack - Follow up with `*ci` to set up CI/CD pipeline --- ## Related - [TEA Overview](../../explanation/features/tea-overview.md) - Understanding the Test Architect - [Run Test Design](./run-test-design.md) - Creating test plans - [Create Architecture](./create-architecture.md) - Architecture workflow