Skip to content
Back to skills

Test Driven Development

ASecurity

Use when implementing any feature or bugfix, before writing implementation code

  • 508 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 7, 2026
developmentrefactoring

Security analysis

A100/100

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

Scanned September 7, 2026

npx -y skills add Dokhacgiakhoa/antigravity-ide --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/dokhacgiakhoa-test-driven-development/badge)](https://www.skillsdirectory.com/skills/dokhacgiakhoa-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
---
version: 4.1.0-fractal
name: test-driven-development
description: Use when implementing any feature or bugfix, before writing implementation code
---

# Test-Driven Development (TDD)

## Overview

Write the test first. Watch it fail. Write minimal code to pass.

**Core principle:** If you didn't watch the test fail, you don't know if it tests the right thing.

**Violating the letter of the rules is violating the spirit of the rules.**

## When to Use

**Always:**
- New features
- Bug fixes
- Refactoring
- Behavior changes

**Exceptions (ask your human partner):**
- Throwaway prototypes
- Generated code
- Configuration files

Thinking "skip TDD just this once"? Stop. That's rationalization.

## The Iron Law

```
NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST
```

Write code before the test? Delete it. Start over.

**No exceptions:**
- Don't keep it as "reference"
- Don't "adapt" it while writing tests
- Don't look at it
- Delete means delete

Implement fresh from tests. Period.

## Red-Green-Refactor

```dot
digraph tdd_cycle {
    rankdir=LR;
    red [label="RED\nWrite failing test", shape=box, style=filled, fillcolor="#ffcccc"];
    verify_red [label="Verify fails\ncorrectly", shape=diamond];
    green [label="GREEN\nMinimal code", shape=box, style=filled, fillcolor="#ccffcc"];
    verify_green [label="Verify passes\nAll green", shape=diamond];
    refactor [label="REFACTOR\nClean up", shape=box, style=filled, fillcolor="#ccccff"];
    next [label="Next", shape=ellipse];

    red -> verify_red;
    verify_red -> green [label="yes"];
    verify_red -> red [label="wrong\nfailure"];
    green -> verify_green;
    verify_green -> refactor [label="yes"];
    verify_green -> green [label="no"];
    refactor -> verify_green [label="stay\ngreen"];
    verify_green -> next;
    next -> red;
}
```

## 🧠 Knowledge Modules (Fractal Skills)

### 1. [RED - Write Failing Test](./sub-skills/red-write-failing-test.md)
### 2. [Verify RED - Watch It Fail](./sub-skills/verify-red-watch-it-fail.md)
### 3. [GREEN - Minimal Code](./sub-skills/green-minimal-code.md)
### 4. [Verify GREEN - Watch It Pass](./sub-skills/verify-green-watch-it-pass.md)
### 5. [REFACTOR - Clean Up](./sub-skills/refactor-clean-up.md)
### 6. [Repeat](./sub-skills/repeat.md)

Files in this skill

  • SKILL.md2.2 KB
  • sub-skills/green-minimal-code.md674 B
  • sub-skills/red-write-failing-test.md873 B
  • sub-skills/refactor-clean-up.md134 B
  • sub-skills/repeat.md5.6 KB
  • sub-skills/verify-green-watch-it-pass.md247 B
  • sub-skills/verify-red-watch-it-fail.md333 B
  • testing-anti-patterns.md8.1 KB

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…