plugins/aai-testing/skills/test-strategy/SKILL.md
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/the-answerai/alphaagent-team/blob/main/plugins/aai-testing/skills/test-strategy/SKILL.md -a claude-code --skill test-strategyInstallation paths:
.claude/skills/test-strategy/# Test Strategy Skill
Patterns for planning and organizing test suites.
## Testing Pyramid
```
┌─────────┐
│ E2E │ Few - Slow, Expensive
├─────────┤
│ Integ │ Some - Medium
├─────────┤
│ Unit │ Many - Fast, Cheap
└─────────┘
```
### Recommended Ratios
- **Unit Tests**: 70% - Fast, isolated, cheap
- **Integration Tests**: 20% - API and service integration
- **E2E Tests**: 10% - Critical user flows only
## Test Organization
### By Feature
```
tests/
├── auth/
│ ├── login.test.ts
│ ├── logout.test.ts
│ ├── register.test.ts
│ └── password-reset.test.ts
├── users/
│ ├── create-user.test.ts
│ ├── update-user.test.ts
│ └── delete-user.test.ts
└── orders/
├── create-order.test.ts
└── order-flow.e2e.ts
```
### By Type
```
tests/
├── unit/
│ ├── services/
│ ├── utils/
│ └── models/
├── integration/
│ ├── api/
│ └── database/
└── e2e/
├── flows/
└── pages/
```
## What to Test
### Always Test
- Public API methods
- Business logic and calculations
- Error handling and edge cases
- Security-sensitive operations
- Data validation
- State transitions
### Consider Testing
- Complex private methods
- Performance-critical code
- Integration points
- Configuration loading
### Avoid Testing
- Third-party library internals
- Simple getters/setters
- Framework code
- Auto-generated code
## Test Prioritization
### P0 - Critical Path
Tests that must never fail:
- Authentication/authorization
- Payment processing
- Core business workflows
- Data integrity operations
### P1 - High Priority
Tests for important features:
- CRUD operations
- Search and filtering
- Notifications
- User preferences
### P2 - Normal Priority
Tests for auxiliary features:
- UI customization
- Report generation
- Export/import
## Test Naming
### Pattern
```typescript
// should [expected behavior] when [condition]
it('should return empty array when no users exist')
it('should throw V