Kas yra bandymais pagrįsta plėtra?

Testu pagrįstas kūrimas (TDD) yra programinės įrangos projektavimo metodas, pagrįstas gamybos kodo iššūkiais, kad būtų galima pradėti kurti funkcionalumą. Tai gali atrodyti priešinga žmonėms, kurie tik pradeda mokytis, tačiau tai suteikia tam tikrų pranašumų, įskaitant švaresnį vystymąsi. Taip pat gali būti greičiau naudoti šį metodą, kai žmonės prie jo priprato, atsižvelgiant į projekto pobūdį. Programuotojai gali naudoti daug įvairių programavimo kalbų kurdami testą ir gali pritaikyti jas naujai programinei įrangai, versijų patobulinimams ar esamų programų pataisymams.

Taikant šį metodą, programuotojas pradeda rašydamas testą, kuris turėtų nepavykti, nes gamybos kodas negali vykdyti konkrečios komandos ar užklausos. Remdamasis gedimu, programuotojas gali sukurti kelias kodo eilutes, kurias reikia pridėti, ir paleisti testą dar kartą. Jei nepavyksta, kažkas negerai, kurį reikia derinti, kad programuotojas galėtų tęsti. Kai jis praeina, programuotojas žino, kad testas konkrečiai apibrėžė ir vadovauja funkcijos kūrimui, ir jis gali pereiti prie kitos funkcijos.

Užuot sukūrę daug funkcinio kodo, kurį vėliau gali tekti ištirti dėl klaidų ir trūkumų, kūrėjai juda lėtai ir apgalvotai. Jie sukuria programą naudodami ypač nedidelį kodą, nes rašo tik tai, ko reikia konkrečioms funkcijoms. Laikui bėgant kodas gali išaugti gana didelis, tačiau kiekviena eilutė atitinka tam tikrą funkciją ar funkciją. Taip pat reikėtų sumažinti klaidų, susijusių su bandymais pagrįstą kūrimą, paplitimą, nes žmonės vis dar ir vėl bandydami efektyviai derina klaidas.

Kiekvienas parašytas testas gali būti naudojamas bet kuriuo metu. Programuotojas gali paleisti kiekvieną, kad patvirtintų, jog visa programa ir toliau veikia taip, kaip turėtų. Jei ne, programuotojas žino, kad naujausia kodo eilutė yra problema, ir gali grįžti, kad ją įvertintų ir išspręstų. Bandymu pagrįsti kūrimo nustatymai skiriasi nuo situacijos, kai kam nors gali tekti persijoti daugybę kodo eilučių, kad surastų klaidą, o tai gali sunaudoti daug laiko.

Iš esmės šis metodas apima kodavimą, kaip žmonės nori, kad programinė įranga veiktų, remiantis konkrečiais testais, kuriuos jie administruoja judėdami. Nors bandymais pagrįstas kūrimas gali atrodyti daug laiko reikalaujantis ir sudėtingas, jis iš tikrųjų gali būti labai efektyvus. Įgudusiems kūrėjams kiekvienam testavimo ir kodavimo etapui reikia ne daugiau nei kelių minučių. Šiek tiek atvirkštinis metodas taip pat gali padėti jiems permąstyti strategijas ir įrankius, kad jie galėtų dirbti naujais ir kartais veiksmingesniais būdais.