Prune Tests
Reduce test-suite cost without weakening meaningful protection.
Keep
Keep a test only when it uniquely protects:
- A durable contract through a stable seam.
- A confirmed regression that remains possible.
- A critical security, permissions, compatibility, concurrency, migration, protocol, or data-loss invariant.
A seam may be an API, CLI, module interface, protocol, workflow, or artifact boundary.
Workflow
- Establish a green baseline.
- Group tests by the obligation they protect.
- Check history before removing likely regression coverage.
- Classify each group as
keep,consolidate,delete, orinvestigate. - Propose deletions and get confirmation.
- Delete in small batches; do not alter production behavior.
- Run focused checks and the full suite.
Delete tests that cover private mechanics, duplicate stronger coverage, enumerate equivalent cases, preserve dead behavior, test framework guarantees, or depend on structure rather than behavior.
If no unique, durable obligation can be named, propose deletion.
Report tests, fixtures, runtime, and lines removed. Do not optimize for coverage percentage.