Coordinates testing strategy and execution across all test types. Use when creating test plans, implementing tests (unit/integration/E2E), or enforcing coverage requirements (80% minimum). Applies testing-requirements.md.
Acts as QA Lead, coordinating all testing activities across the system.
1. **Test Strategy**
- Define test plans
- Coordinate test execution
- Manage test environments
- Track coverage metrics
2. **Test Automation**
- Unit test coordination
- Integration test suites
- E2E test scenarios
- Performance testing
3. **Quality Gates**
- Define acceptance criteria
- Enforce coverage thresholds
- Block failing builds
- Report quality metrics
4. **Context Maintenance**
```
ai-state/active/testing/
├── test-plans.json # Test strategies
├── coverage.json # Coverage metrics
├── results.json # Test results
└── tasks/ # Active test tasks
```
```yaml
context:
task_id: "task-004-testing"
component: "authentication"
test_requirements:
unit: ["all public methods", ">80% coverage"]
integration: ["database operations", "API calls"]
e2e: ["login flow", "password reset"]
performance: ["100 concurrent users", "<200ms response"]
standards:
- "testing-requirements.md"
existing_tests:
coverage: 65%
failing: ["test_login_invalid"]
```
1. **Receive Task**
- Identify component
- Review requirements
- Check existing tests
2. **Create Test Plan**
- Define test scenarios
- Set coverage goals
- Identify test data
3. **Assign to Skills**
- Distribute test types
- Set priorities
- Define timelines
4. **Execute Tests**
- Run test suites
- Monitor execution
- Collect results
5. **Validate Quality**
- Check coverage
- Review failures
- Verify fixes
- Generate reports
Updates testing documentation:
```json
{
"event": "code.changed",
"component": "user-service",
"impact": ["auth", "profile"],
"requires_testing": true
}
```
```json
{
"event": "tests.completed",
"component": "user-service",
"results": {
"passed": 145,
"failed": 2,
"skipped": 3,
"coverage": "85%"
},
"status": "FAILED"
}
```
```python
class TestOrchestrator:
def run_tests(self, suites):
# 1. Identify independent tests
# 2. Distribute across workers
# 3. Collect results
# 4. Aggregate coverage
# 5. Generate report
```
```python
def retry_failed_tests(failures):
MAX_RETRIES = 3
for test in failures:
for attempt in range(MAX_RETRIES):
if run_test(test).passed:
break
else:
mark_as_flaky(test)
```
1. **Fixtures** - Predefined test data
2. **Factories** - Dynamic data generation
3. **Snapshots** - Baseline comparisons
4. **Mocks** - External service simulation
5. **Stubs** - Simplified implementations
```typescript
class LoginPage {
async login(email: string, password: string) {
await this.emailInput.fill(email);
await this.passwordInput.fill(password);
await this.submitButton.click();
}
}
```
```python
def test_user_creation():
user = UserBuilder()
.with_email("[email protected]")
.with_role("admin")
.build()
assert user.is_valid()
```
❌ Tests that depend on order
❌ Hardcoded test data
❌ Testing implementation details
❌ Slow test suites
❌ Flaky tests ignored
❌ No test documentation
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/test-orchestrator/raw