Haku

Testivetoinen kehitys Spring Boot -alustalla

QR-koodi

Testivetoinen kehitys Spring Boot -alustalla

Työn tavoitteena oli tutustua testivetoiseen ja hyväksymistestivetoiseen kehitykseen ja soveltaa niiden oppeja työn toimeksiantajana toimineen Ambientia Oy:n tilaaman sovelluksen kehitystyöhön. Tarve työlle syntyi toimeksiantajan tarpeesta kyseiselle sovellukselle sekä tekijän kiinnostuksesta syventää testaus- ja suunnitteluosaamistani testivetoisen kehityksen kautta.

Työn teoriaosuudessa esitellään testauksen sekä testi- ja hyväksymistestivetoisen kehityksen perusteet ammattikirjallisuuden kautta tarkastellen myös niiden havaittuja hyötyjä ja haittoja. Lisäksi osuudessa käydään pintapuolisesti läpi työssä käytetyt kehykset ja testaustyökalut. Toiminnallisessa osuudessa sovelluksen kehittämistyö dokumentoidaan ja tehdään havaintoja testivetoisen kehityksen omaksumisesta ja sen vaikutuksista kehitystyöhön. Lisäksi pyritään arvioimaan Spring Bootin ja sen testityöka-lujen soveltumista testivetoiseen kehitykseen.

Vaikka testivetoisen kehityksen omaksumisen havaittiin olevan työlästä ja aiheuttavan paikoin ylimääräistä työtä tehtyjen suunnitteluvirheiden myötä, sen koettiin vaikuttaneen positiivisesti koodin rakenteeseen ja ylläpidettävyyteen. Nämä yhdessä hyvän testikattavuuden kanssa tukivat muutosten ja lisäysten tekemistä projektin edetessä. Springin testaustyökalujen havaittiin soveltuvan erinomaisesti testi- ja hyväksymistestivetoiseen kehitykseen niiden kattavuuden, konfiguroitavuuden ja helppokäyttöisyyden myötä. Testaamisen havaittiin myös helpottuvan ja nopeutuvan, kun kaikki testaamiseen liittyvä voitiin hoitaa samassa ympäristössä ja samalla ohjelmointikielellä. Spring-arkkitehtuureissa tyypillisten tilattomien palveluluokkien yksikkötestien havaittiin kuitenkin olevan hankalia ylläpidettäviä niiden vaatiman runsaan korvikkeiden käytön takia.

Tallennettuna: