TDD, neboli vývoj řízený testy, je disciplinovaný programátorský přístup, který obrací tradiční pořadí "nejdřív kód, potom test". Místo toho vývoj probíhá v krátkých, opakujících se cyklech, které vždy začínají napsáním automatizovaného testu pro funkci, která ještě neexistuje. Tento test logicky nejprve selže, protože testovaná funkce zatím nic nedělá.
Cyklus má tři jasné kroky, známé jako "Red-Green-Refactor":
Tento přístup vede k mnohem robustnějšímu a kvalitnějšímu kódu. Nutí programátora přemýšlet o požadavcích a designu ještě před napsáním samotné logiky. Výsledkem je sada komplexních unit testů, která slouží jako záchranná síť proti budoucím chybám a zároveň jako dokonalá technická dokumentace. TDD není jen o testování; je to metodika pro navrhování promyšleného a udržitelného softwaru.