testing-strategy
SKILL.md
Testing Strategy
Comprehensive testing guidance for test architecture, coverage strategy, and test design.
Test Pyramid
| Level | Speed | Cost | Confidence | Share |
|---|---|---|---|---|
| Unit | ~1ms | Low | Narrow | 65-80% |
| Integration | ~100ms | Medium | Medium | 15-25% |
| Contract | ~10ms | Low | API shape | Part of unit |
| E2E | ~1s+ | High | Broad | 5-10% |
Key Principles
- Test behavior, not implementation — test what code does, not how
- Follow the testing pyramid — more unit tests, fewer E2E
- Use meaningful coverage metrics — branch coverage over line coverage
- Prevent flaky tests — no arbitrary waits, no test interdependence
Quick Start Checklist
- Choose test framework (Vitest recommended for new projects)
- Design test folder structure mirroring source
- Write unit tests for pure logic and utilities
- Add integration tests for API endpoints and data flows
- Add contract tests against OpenAPI spec (if applicable)
- Add E2E tests for critical user journeys only
- Set up CI to run tests on every PR
What NOT to Test
- Framework internals (React rendering, Express routing)
- Third-party library behavior
- Trivial getters/setters with no logic
- Implementation details (private methods, internal state)
References
| Reference | Description |
|---|---|
| test-architecture-structure.md | Project structures, shared utilities, test configuration |
| test-architecture-isolation.md | Playwright config, database isolation, performance optimization |
| test-design-techniques.md | Equivalence partitioning, boundary values, decision tables, state transitions |
| test-design-error-and-advanced.md | Error handling tests, property-based testing, parameterization, regression |
| frontend-react-testing.md | React Testing Library, queries, user events, hooks, forms |
| frontend-vue-a11y-visual.md | Vue Test Utils, accessibility, visual/Storybook testing, anti-patterns |
| e2e-playwright.md | Playwright POM, fixtures, auth state, API mocking, visual comparison |
| e2e-cypress-and-stability.md | Cypress patterns, flaky test prevention, test data, debugging |
| mocking-fundamentals.md | Mock decision tree, stubs/mocks/spies/fakes, MSW setup and usage |
| mocking-modules-and-patterns.md | Module mocking, time mocking, anti-patterns, dependency injection |
| coverage-guide.md | Coverage metrics, meaningful thresholds, CI integration |
| api-test-frameworks-setup.md | Vitest and Jest setup, configuration, running tests |
| api-test-supertest-and-helpers.md | Supertest usage, request helpers, custom matchers, snapshots, debugging |
| api-integration-patterns.md | CRUD endpoint tests, relationship tests |
| api-auth-patterns.md | Login/logout, protected routes, authorization, auth helpers |
| api-e2e-and-edge-cases.md | Multi-step workflow tests, error responses, edge cases |
| api-test-data-factories.md | Factory patterns, builders, fixtures |
| api-test-data-database.md | Database helpers, cleanup strategies, data generation |
| api-contract-openapi.md | OpenAPI/AJV schema validation, contract tests |
| api-contract-zod-advanced.md | Zod validation, response shape testing, breaking change detection |
| api-test-ci-pipelines.md | CI pipeline strategy, GitHub Actions, parallel execution |
| api-test-ci-environments.md | Environment config, test reporting, database services, E2E environments |
| anti-rationalization.md | Iron Law, common rationalizations, red flag STOP list for TDD discipline |
Weekly Installs
20
Repository
srstomp/pokayokayGitHub Stars
2
First Seen
Jan 24, 2026
Security Audits
Installed on
opencode17
gemini-cli16
codex16
github-copilot16
claude-code15
cursor14