BMAD-METHOD/docs/how-to/workflows/setup-test-framework.md

115 lines
2.6 KiB
Markdown

---
sidebar_label: Setup Test Framework
description: How to set up a production-ready test framework using TEA
---
# How to Set Up a Test Framework
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