Skip to content
Back to skills

Test Driven Development

ASecurity

Implements behavior changes with a test-first red-green-refactor loop: write one meaningful failing test, watch it fail for the intended reason, make the smallest change, then refactor while green. Use for new behavior, bug fixes, refactors with preserved contracts, and regression tests. Not required for disposable prototypes, generated files, or documentation-only edits.

  • 95 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 22, 2026
ai-agentsdebuggingdocumentation

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 22, 2026

npx -y skills add thiientv/godmode --skill test-driven-development --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Test Driven Development?

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

Security grade badge for Test Driven Development
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thiientv-test-driven-development/badge)](https://www.skillsdirectory.com/skills/thiientv-test-driven-development)

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: test-driven-development
description: >-
  Implements behavior changes with a test-first red-green-refactor loop: write
  one meaningful failing test, watch it fail for the intended reason, make the
  smallest change, then refactor while green. Use for new behavior, bug fixes,
  refactors with preserved contracts, and regression tests. Not required for
  disposable prototypes, generated files, or documentation-only edits.
---

# Test-Driven Development

The test is an executable statement of behavior, not a coverage decoration.

## Red-green-refactor

1. **Red:** name one behavior and write the smallest test at the highest seam
   that can fail for the missing behavior.
2. **Verify red:** run the focused command. Confirm it fails because the
   behavior is absent, not because of a typo, broken fixture, or setup error.
3. **Green:** implement the simplest production change that makes the test
   pass. Do not add speculative options or unrelated cleanup.
4. **Verify green:** run the focused test and relevant existing tests.
5. **Refactor:** improve names, duplication, and boundaries while keeping the
   suite green. Add the next behavior only after the current loop is stable.

## Honest tests

- Assert user-visible or contract-visible behavior, not private call counts.
- Prefer real collaborators; mock only an expensive, nondeterministic, or
  unavailable boundary and state why.
- Make failures diagnostic: clear name, small fixture, one cause.
- Include error, empty, boundary, retry, ordering, and permission cases when
  they are part of the contract.

## Exceptions

For a prototype, generated output, or docs-only change, state why test-first is
not useful and choose another observable check. “I will test later” is not an
exception for production behavior.

Use [test-design.md](references/test-design.md) when the test seam or fixture
quality is unclear. Pair with `root-cause-debugging` for an existing failure
and `completion-verification` at the final gate.

## Completion condition

The loop is credible when the test was observed failing for the intended reason,
passes after the change, neighboring checks remain green, and the remaining
untested behavior is named.

Files in this skill

  • SKILL.md2.2 KB
  • references/test-design.md950 B

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…