chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
---
|
||||
name: test-coverage-loop
|
||||
description: Adds meaningful tests pass after pass until the suite reaches a target coverage threshold and stays green.
|
||||
category: engineering
|
||||
interval: 20m
|
||||
stop-condition: Coverage meets or exceeds the target (e.g. 90%) with all tests passing and no flaky additions.
|
||||
components: [agent:performance-testing/test-automator, command:testing/test-coverage, command:testing/generate-tests]
|
||||
tags: [testing, coverage, quality, loop]
|
||||
---
|
||||
|
||||
# Test Coverage Loop
|
||||
|
||||
> **Loop Engineering** — a recurring goal that drives the agent to grow real test coverage incrementally instead of in one risky batch.
|
||||
|
||||
## 🎯 Goal
|
||||
Raise test coverage toward a defined target by adding **meaningful** tests for the least-covered, highest-risk code first — never gaming the metric with empty assertions.
|
||||
|
||||
## ⏱️ Schedule
|
||||
Suggested interval: `20m`.
|
||||
|
||||
## ▶️ Run it
|
||||
```
|
||||
/loop 20m "Measure current test coverage. Pick the lowest-covered, highest-risk module and add real, behavior-focused tests for it. Re-run the suite. Continue until coverage is at least 90% with everything passing."
|
||||
```
|
||||
|
||||
## 🔁 Iteration steps
|
||||
1. **Perceive** — run the coverage report and rank uncovered code by risk.
|
||||
2. **Reason** — identify branches, error paths and edge cases that lack tests.
|
||||
3. **Plan** — choose one module/area to cover this pass.
|
||||
4. **Act** — generate tests with `test-automator` + `/generate-tests`.
|
||||
5. **Observe** — re-run `/test-coverage`; if the suite is green and coverage rose, continue; if flaky, fix before moving on.
|
||||
|
||||
## 🛑 Stopping condition
|
||||
Coverage ≥ target, full suite passes, and no newly-added test is flaky.
|
||||
|
||||
## 🧩 Referenced components
|
||||
- `agent:performance-testing/test-automator` — authors the tests.
|
||||
- `command:testing/test-coverage` — measures progress each pass.
|
||||
- `command:testing/generate-tests` — scaffolds new test cases.
|
||||
|
||||
## 💡 Example
|
||||
Starting at 61%, the loop targets the untested error branches of the payment module first, climbing a few points per pass until it crosses 90% with a green suite.
|
||||
Reference in New Issue
Block a user