---
id: tdd
requestedLanguage: en
descriptionLanguage: en
---

# Test-Driven Development

- Type: development practice
- Group: Implementation cycle
- Placement: Implementation / Evolving the solution
- [Source](<https://agilealliance.org/glossary/tdd/>)

[HTML](https://dpm.cnonim.name/practices/tdd/)

A short cycle: failing test → minimal implementation → refactoring.

## Relationships

- can be combined with: [Acceptance Test-Driven Development](/practices/atdd/en.md) (combination)
- can be combined with: [Behavior-Driven Development](/practices/bdd/en.md) (combination)
- includes the step: [Refactoring](/practices/refactor/en.md) (structure)
- its tests can be assessed by: [Mutation Testing](/practices/mutation/en.md) (verification)
- may use: [Property-based Testing](/practices/property/en.md) (support)
- may use: [Unit Testing](/practices/unit/en.md) (support)
- is a practice in: [Extreme Programming](/practices/xp/en.md) (structure)

[Show on the map](https://dpm.cnonim.name/#practice=tdd&lang=en)
