Testivetoinen kehitys
Wikipedia
Testivetoinen kehitys (engl. test-driven development, TDD) on ohjelmointiparadigma, jossa toistuvasti luodaan ensin uusi testitapaus ja seuraavaksi muokataan kehitettävää ohjelmaa niin, että se läpäisee uuden testin. Yksikkötestit siis kirjoitetaan pienissä osissa ennen varsinaista tuotantokoodia. Tällä pyritään paitsi parempaan rajapintasuunnitteluun, myös varmistumaan ohjelmiston oikeasta toiminnasta. Mikäli yksikkötestit aiottaisiin kirjoittaa tuotantokoodin jälkeen, ne jäisivät usein tekemättä. Jälkikäteen on vaikeampi nähdä yksikkötestien hyötyjä, joten sille ei yleensä osoiteta aikaa.
Kun testikoodi kirjoitetaan etukäteen, tuloksena saadaan jatkuvasti kehittyvä testiverkosto jonka varassa uusien toimintojen kehittäminen ja virheiden korjaaminen on huomattavasti turvallisempaa, koska jo olemassa olevat testit huomaavat, mikäli bugia korjatessa tulee tehneeksi uusia virheitä.
Testivetoinen kehitys yhdistetään usein johonkin ketterään ohjelmistoprosessiin. Erityisesti tulee huomata, että testivetoinen kehitys ei ole testausmenetelmä, vaan suunnittelumenetelmä, vaikka sivutuotteena syntyykin joukko käyttökelpoisia testejä.

