test-strategy — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited test-strategy (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Produces a test strategy document defining what to test, at which layer, with which tools, and to what coverage standard. It applies the test pyramid model, surfaces coverage gaps in existing codebases, and produces a concrete plan — not a generic "write more tests" recommendation.
╱‾‾‾‾‾‾‾‾‾‾‾‾╲
╱ End-to-end ╲ Few, slow, high confidence on critical paths
╱‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾╲
╱ Integration ╲ Moderate, test component boundaries and contracts
╱‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾╲
╱ Unit ╲ Many, fast, test logic in isolation
╲____________________________╱| Layer | What it tests | Speed | Cost | Quantity |
|---|---|---|---|---|
| Unit | Individual functions, classes, pure logic | Fast | Low | Many |
| Integration | Component interactions, DB queries, API calls, message handling | Medium | Medium | Moderate |
| Contract | API contracts between services (consumer-driven) | Fast | Low | As needed |
| End-to-end | Full user journeys through a running system | Slow | High | Few |
| Performance | Response times, throughput, load behaviour | Slow | High | Targeted |
| Security | Authentication, authorisation, injection, exposure | Variable | Medium | Targeted |
Coverage percentage is a floor, not a target. Define coverage by risk area, not by line count:
Good tests are:
# Test Strategy: [System / Feature name]
**Date:** YYYY-MM-DD
**Author:** [name]
**Stack:** [language, framework, key dependencies]
---
## Objectives
- [What this strategy aims to achieve — e.g. "Catch regressions in the payment flow before deployment"]
## Scope
**In scope:** [What will be tested under this strategy]
**Out of scope:** [What will not be — and why]
---
## Test layers
### Unit tests
**What:** [What logic is unit tested]
**Tools:** [e.g. pytest, JUnit, Jest]
**Coverage goal:** [e.g. 80% line coverage on business logic modules]
**Mocking strategy:** [What is mocked and what is not]
### Integration tests
**What:** [What boundaries are tested — DB, external APIs, message queues]
**Tools:** [e.g. Testcontainers, pytest-django, Supertest]
**Coverage goal:** [e.g. all repository methods, all HTTP handlers]
**Environment:** [e.g. real DB in Docker, stubbed external APIs]
### Contract tests
**What:** [Which service boundaries have contracts]
**Tools:** [e.g. Pact]
**Coverage goal:** [e.g. all consumer-defined contracts verified on provider CI]
### End-to-end tests
**What:** [Critical user journeys — keep this list short]
**Tools:** [e.g. Playwright, Cypress, Selenium]
**Coverage goal:** [e.g. 3–5 critical journeys: login, checkout, password reset]
**Environment:** [e.g. staging with seeded data]
### Performance tests *(if applicable)*
**What:** [Endpoints or flows with performance NFRs]
**Tools:** [e.g. k6, Locust, JMeter]
**Thresholds:** [e.g. p95 < 200ms at 100 RPS]
### Security tests *(if applicable)*
**What:** [Auth flows, input validation, data exposure]
**Tools:** [e.g. OWASP ZAP, Bandit, Semgrep]
---
## Coverage gaps (existing codebase)
| Area | Current state | Gap | Priority |
| --- | --- | --- | --- |
| [Module / feature] | [e.g. no tests] | [What is missing] | High / Medium / Low |
---
## CI integration
| Layer | Trigger | Blocking? |
| --- | --- | --- |
| Unit | Every commit | Yes |
| Integration | PR | Yes |
| E2E | PR / nightly | PR: smoke only; nightly: full suite |
| Performance | Nightly | No (alert on regression) |
---
## Definition of done for tests
- [ ] New code has unit tests covering the happy path and at least one edge case.
- [ ] New API endpoints have integration tests.
- [ ] New critical user journeys have an E2E smoke test.
- [ ] No new flaky tests introduced.
- [ ] Test names describe the scenario, not the implementation.Input: "Define a test strategy for a Python FastAPI service with a PostgreSQL database."
Expected output: Unit layer covering service/business logic (pytest, no DB). Integration layer covering routers and repositories (pytest + Testcontainers with real Postgres). No contract tests (single consumer). E2E limited to two critical journeys. CI: unit + integration on every PR, E2E nightly.
Input: "What's the right test strategy for a React frontend with a REST API backend?"
Expected output: Unit layer for utility functions and hooks (Jest + Testing Library). Component tests for complex interactive components. No true unit tests for pure render — that's over-testing. E2E for critical user journeys (Playwright). Contract tests for API calls if the backend is separately deployed. Note on avoiding snapshot tests as a default.
Input: "We have a Node.js service with 95% line coverage but bugs keep reaching production."
Expected output: Coverage gap analysis noting that line coverage measures execution, not correctness. Findings: likely over-mocked unit tests, missing integration tests on DB layer, no E2E on critical paths. Recommendations: reduce mocking at the service boundary, add Testcontainers integration tests, add two E2E smoke tests.
acceptance-test-plan (E2E and UAT scenarios) and requirements-document (NFRs drive performance and security test thresholds).~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.