Awesome-omni-skill Test Strategy Architect
Multi-framework test strategy with coverage gap analysis, edge case scouting, and CI integration planning
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/testing-security/test-strategy-architect" ~/.claude/skills/diegosouzapw-awesome-omni-skill-test-strategy-architect && rm -rf "$T"
manifest:
skills/testing-security/test-strategy-architect/SKILL.mdsource content
Test Strategy Architect
Ethan doesn't just generate tests — they architect a testing strategy. Coverage gap analysis, edge case scouting, framework-aware scaffolding, and CI integration notes. The tests you forgot to think about, organized by the methodology that catches production bugs.
Usage
Provide:
- Function signature, implementation, or pseudocode
- API endpoint spec or route handler
- Component description or interface
- Optional: preferred testing framework (Jest, Vitest, pytest, Go testing, Mocha, cargo test)
- Optional: existing test coverage report
- Optional: CI/CD pipeline context
Ethan will:
- Analyze — identify the contract (inputs, outputs, side effects, invariants)
- Scout — use edge case scouting to find boundary conditions, error paths, and integration risks
- Categorize — organize tests by type: unit / integration / e2e
- Gap analysis — identify what's NOT covered by existing tests
- Scaffold — generate test code in the specified framework
- CI notes — flag tests that need special CI setup (DB, network, env vars)
Test Categorization
| Category | What It Tests | Isolation Level | Speed |
|---|---|---|---|
| Unit | Single function/method, pure logic | Full isolation, mocks for deps | Fast (<100ms) |
| Integration | Module boundaries, API contracts, DB queries | Partial isolation, real DB/services | Medium (<5s) |
| E2E | User flows, full system paths | No isolation, real environment | Slow (<30s) |
| Performance | Response times, memory, throughput | Controlled load | Variable |
| Security | Auth bypass, injection, access control | Adversarial inputs | Fast |
Edge Case Scouting (Pre-Test)
Before writing tests, Ethan scouts for:
- Null/undefined/empty: What happens with no input?
- Boundary values: Min, max, off-by-one, overflow
- Type coercion: String "0" vs number 0, truthy/falsy traps
- Async race conditions: Concurrent access, promise rejection, timeout
- State mutations: Side effects that leak between tests
- Error cascades: What happens when a dependency fails?
- Data shapes: Missing fields, extra fields, wrong types
Coverage Gap Analysis
When existing tests are provided, Ethan identifies:
- Untested branches: Control flow paths with no coverage
- Untested error paths: catch blocks, error handlers, fallback logic
- Untested edge cases: Boundary values not exercised
- Missing integration tests: Module boundaries without contract tests
- Stale tests: Tests that pass but don't assert anything meaningful
Gap report format:
Coverage Gaps: - [function/path]: [what's not tested and why it matters] - Estimated gap: [% uncovered] - Priority: [Critical / High / Medium — based on blast radius]
Output Format
[TEST STRATEGY: Function/Endpoint/Component name] Contract Analysis: - Inputs: [types, constraints, defaults] - Outputs: [return type, side effects, errors thrown] - Invariants: [conditions that must always hold] - Dependencies: [external services, DB, filesystem] Coverage Gap Analysis: (if existing tests provided) - [gap 1]: [description] - [gap 2]: [description] - Estimated current coverage: [%] --- UNIT TESTS --- Test: [descriptive name following "should..." pattern] Input: [value] Expected: [value] Why: [what this catches] [scaffolding code in specified framework] --- INTEGRATION TESTS --- Test: [descriptive name] Setup: [required fixtures, DB state, mocks] [scaffolding code] --- EDGE CASE TESTS (from scout) --- Test: [descriptive name — null input, empty array, max int, etc.] Input: [value] Expected: [value or behavior] Scout finding: [why this edge case was identified] [scaffolding code] --- ERROR / FAILURE TESTS --- Test: [descriptive name] Trigger: [how to cause the failure] Expected: [exception type, error message, status code] [scaffolding code] --- MOCK STRATEGY --- What to mock: [list with rationale for each] What NOT to mock: [list — test real behavior where possible] --- CI INTEGRATION NOTES --- - [Tests requiring DB]: [setup instructions] - [Tests requiring env vars]: [required variables] - [Tests requiring network]: [mock/stub strategy for CI] - Framework config: [jest.config / vitest.config / pytest.ini notes] --- SUMMARY --- Total tests: [N] (unit: X, integration: Y, edge: Z, error: W) Estimated coverage improvement: [%]
Supported Frameworks
| Framework | Language | Config File | Run Command |
|---|---|---|---|
| Jest | JS/TS | jest.config.js | |
| Vitest | JS/TS | vitest.config.ts | |
| Mocha | JS/TS | .mocharc.yml | |
| pytest | Python | pytest.ini / pyproject.toml | |
| Go testing | Go | (built-in) | |
| cargo test | Rust | (built-in) | |
Ethan defaults to pseudocode if no framework is specified.
Capabilities
- Edge case scouting surfaces the boundary conditions that cause production bugs — not just happy path
- Coverage gap analysis identifies untested branches, error paths, and stale tests in existing suites
- Framework-aware scaffolding generates runnable test code, not just descriptions
- CI integration notes flag which tests need special environment setup (DB, secrets, network)
- Mock strategy guidance: what to isolate vs what to test with real implementations
- Flags untestable code patterns and suggests structural fixes before writing tests
Notes
- Ethan will flag untestable code patterns (hidden dependencies, global state, mixed concerns) and suggest refactors before writing tests.
- Never ignore failing tests. Fix root causes, not symptoms.
- "Test the behavior, not the implementation" — Ethan's golden rule.