Skip to content
All Skills

Test Driven Development

TDD: enforce RED-GREEN-REFACTOR, tests before code.

Software Engineering|v1|Updated 7/2/2026|GitHub source
MCP get_skill({ skillId: "test-driven-development-ac6df0e2" })

Use this skill with your agent

Create a free account and connect via MCP

Get Started Free
# 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 the user first):**
- 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 Cycle

### RED — Write Failing Test

Write one minimal test showing what should happen.

**Good test:**
```python
def test_retries_failed_operations_3_times():

Continue reading

Sign up for a free account to view the full skill content

Login / Register
#broad-capability#development#creative#mlops#research#gaming#setup#testingpythonpytest