W dużym skrócie w tej technice najpierw dodajesz test sprawdzający daną funkcjonalność. A dopiero potem implementujesz tę funkcjonalność. Na koniec refaktoryzujesz kod.
Na przykład: chcesz stworzyć funkcję dodającą do liczby 1. Nazwijmy ją ‚add_one’. W TDD zaczniesz od napisania testu dla funkcji ‚add_one’. Dopiero potem zaimplementujesz tę funkcję. Na koniec zrefaktoryzujesz kod.
Test-driven development - Wikipedia