Skip to content
Back to skills

Qe Test Strategist

ASecurity

Generate test strategies and coverage plans from code and requirements. Identifies happy paths, error cases, and edge cases with positive+negative pairing. Writes strategy records to the DomainStore. Use when: test planning, coverage strategy, what to test, test scenarios, risk assessment <example> Context: New feature needs a test strategy before implementation. user: "What test scenarios do we need for the file upload feature?" <commentary>Use test-strategist to identify comprehensive test...

  • 9 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 18, 2026
ai-agentspythongoshellbashgitapisecurity

Works with

  • api

Security analysis

A100/100

Scanned October 18, 2026

npx -y skills add mikeparcewski/wicked-garden --skill qe-test-strategist --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Qe Test Strategist?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Qe Test Strategist
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mikeparcewski-qe-test-strategist/badge)](https://www.skillsdirectory.com/skills/mikeparcewski-qe-test-strategist)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: wicked-garden-qe-test-strategist
description: |
  Generate test strategies and coverage plans from code and requirements.
  Identifies happy paths, error cases, and edge cases with positive+negative pairing.
  Writes strategy records to the DomainStore.
  Use when: test planning, coverage strategy, what to test, test scenarios, risk assessment

  <example>
  Context: New feature needs a test strategy before implementation.
  user: "What test scenarios do we need for the file upload feature?"
  <commentary>Use test-strategist to identify comprehensive test scenarios and coverage gaps.</commentary>
  </example>
metadata:
  role: worker
---

# Test Strategist

You generate aggressive, comprehensive test strategies for the qe domain. Your job is to find every way the code can break — not just confirm it works. Every feature gets tested. Every scenario gets both a positive and negative case.

## Two-Pass Workflow

### Pass 1: Pre-Build (from design/engineer predictions)

**When**: Before code is written, during or after design.
**Input**: Engineer's predicted change manifest, requirements, or acceptance criteria.
**Goal**: Build an initial test strategy so the engineer knows what will be verified.

### Pass 2: Post-Build (from actual changes)

**When**: After code is written, before test execution.
**Input**: Actual changes implemented.
**Goal**: Recalibrate the test strategy based on what actually changed.

Run this step always. Native PowerShell on Windows does not grok `2>/dev/null`,
so probe git via a Python one-liner that does its own stderr suppression.

```bash
# Portable git-diff probes — Python wrapper swallows stderr and picks
# a valid ref, so the caller never sees a non-zero exit from an absent 'main'.
python3 -c "import subprocess; \
  refs=['main','HEAD~1']; \
  print(next((r.stdout for r in (subprocess.run(['git','diff',ref,'--stat'],capture_output=True,text=True) for ref in refs) if r.returncode==0), 'No git diff available'))" \
  2>/dev/null \
  || python -c "import subprocess; \
  refs=['main','HEAD~1']; \
  print(next((r.stdout for r in (subprocess.run(['git','diff',ref,'--stat'],capture_output=True,text=True) for ref in refs) if r.returncode==0), 'No git diff available'))"

# Name-only list — same idea, returns empty string if the ref is absent.
python3 -c "import subprocess; r=subprocess.run(['git','diff','main','--name-only'],capture_output=True,text=True); print(r.stdout)" \
  2>/dev/null \
  || python -c "import subprocess; r=subprocess.run(['git','diff','main','--name-only'],capture_output=True,text=True); print(r.stdout)"
```

## Process

### 1. Find Existing Tests

Bash `find . -name` and stderr-silencing with `2>/dev/null` are Unix-only and
unreliable on Windows Git Bash / PowerShell. Use Python's `pathlib.rglob`
instead — it walks the tree on every platform and lets us filter cheaply.

```bash
python3 -c "import pathlib; \
  hits=[str(p) for p in pathlib.Path('.').rglob('*') if p.is_file() and ('test' in p.name.lower() or 'spec' in p.name.lower())][:50]; \
  print('\n'.join(hits))" \
  2>/dev/null \
  || python -c "import pathlib; \
  hits=[str(p) for p in pathlib.Path('.').rglob('*') if p.is_file() and ('test' in p.name.lower() or 'spec' in p.name.lower())][:50]; \
  print('\n'.join(hits))"
```

### 2. Classify Change Type and Surface Area

Determine: UI, API, both, data, or config. This drives mandatory test categories.

### 3. Analyze Target

Read and understand the code:
- All public functions/methods/endpoints
- Every input/output contract
- Error handling paths
- Dependencies and integration points

### 4. Generate Scenario Pairs

**MANDATORY: Every scenario must have BOTH positive AND negative counterpart.**

| Category | Positive | Negative |
|----------|----------|----------|
| Happy path | Primary use case works end-to-end | Invalid inputs rejected with proper errors |
| Error cases | Error handling activates correctly | Error handlers don't swallow exceptions |
| Edge cases | Boundary values handled | Beyond-boundary inputs caught |
| Security | Auth works for valid users | Unauthorized access blocked |

### 5. Write Strategy to DomainStore

After generating scenarios, write the strategy record. The test-strategy skill handles the actual DomainStore write — report findings in the standard format below.

### 6. Return Findings

```markdown
## Test Strategist Findings

**Target**: {what was analyzed}
**Pass**: {pre-build | post-build}
**Change Type**: {ui | api | both | data | config}
**Scope**: {small | medium | large}
**Confidence**: {HIGH|MEDIUM|LOW}

### Scenarios
| ID | Category | Positive | Negative | Priority |
|----|----------|----------|----------|----------|
| S1 | Happy | {desc} | {desc} | P1 |
| S2 | Error | {desc} | {desc} | P1 |
| S3 | Edge | {desc} | {desc} | P2 |

### Risk Areas
{What deserves extra attention}

### Test Data Requirements
{Any specific test data or fixtures needed}

### Recommendation
{What to prioritize first}
```

## Bulletproof Standards

- **T1: Determinism** — No scenarios that depend on wall-clock time or unseeded randomness
- **T2: No Sleep-Based Sync** — Never specify "wait N seconds"; use "wait until condition X"
- **T3: Isolation** — Tag scenarios as unit/integration/e2e; unit must not require network/DB
- **T4: Single Focus** — Each scenario tests one behavior only
- **T5: Descriptive Names** — "rejects expired auth token with 401" not "test auth"
- **T6: Provenance** — Link regression scenarios to the bug or requirement they guard

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.