Testausstrategian laatiminen ja testausautomaation toteutus web-sovelluksen käyttöliittymälle
Rasio, Katri (2022)
Rasio, Katri
2022
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2022052511972
https://urn.fi/URN:NBN:fi:amk-2022052511972
Tiivistelmä
Insinöörityön aiheena oli testausstrategian laatiminen ja testausautomaation toteuttaminen React-käyttöliittymäkirjaston avulla toteutetulle web-sovellukselle. Työn tavoitteena oli mahdollistaa painopisteen siirtyminen manuaalitestauksesta automaatiotestaukseen ja sitä myöten parantaa laatua ja käyttäjäkokemusta.
Projektissa otettiin käyttöön Jest- ja React Testing Library -työkalut. Sovelluksen käyttöliittymäkomponenteille ja apuluokille kirjoitettiin testejä, joilla varmistettiin testaukseen käytettyjen työkalujen toimivuus. Kirjoitetut testit määriteltiin suoritettavaksi osana jatkuvan integraation ja koonnin (CI/CD) käytäntöjä versionhallintaympäristössä. Testausstrategia lisättiin osaksi dokumentaatiota ja käytiin läpi kehitystiimin kanssa.
Työ alkoi testaukseen tarvittavien työkalujen valitsemisella, asentamisella ja määrityksillä. Testattaviksi valittiin ne sovelluksen osat, joiden automaattisesta testaamisesta olisi eniten hyötyä ja jotka edustaisivat sovellusta mahdollisimman laajasti, jotta testien kirjoittaminen olisi tulevaisuudessa mahdollisimman helppoa. Valituille tapauksille kirjoitettiin testit. Lopuksi toteutetut testit asetettiin suoritettaviksi aina lähdekoodin muuttuessa versionhallinnassa.
Testausstrategiassa määriteltiin testauksen periaatteet ja esimerkkitapauksia erityyppisistä testeistä lisättiin osaksi dokumentaatiota tulevan tekemisen tueksi.
Testausautomaatio toimi osana päivittäistä sovelluskehitystyötä. Käyttöönotetut työkalut madalsivat kynnystä kirjoittaa testejä, ja testien automatisointi paransi testaamisen laatua. Ohjelmavirheiden nopeampi havaitseminen helpotti virheiden korjaamista ja pienensi niiden korjaamisen kustannuksia.
Projektissa otettiin käyttöön Jest- ja React Testing Library -työkalut. Sovelluksen käyttöliittymäkomponenteille ja apuluokille kirjoitettiin testejä, joilla varmistettiin testaukseen käytettyjen työkalujen toimivuus. Kirjoitetut testit määriteltiin suoritettavaksi osana jatkuvan integraation ja koonnin (CI/CD) käytäntöjä versionhallintaympäristössä. Testausstrategia lisättiin osaksi dokumentaatiota ja käytiin läpi kehitystiimin kanssa.
Työ alkoi testaukseen tarvittavien työkalujen valitsemisella, asentamisella ja määrityksillä. Testattaviksi valittiin ne sovelluksen osat, joiden automaattisesta testaamisesta olisi eniten hyötyä ja jotka edustaisivat sovellusta mahdollisimman laajasti, jotta testien kirjoittaminen olisi tulevaisuudessa mahdollisimman helppoa. Valituille tapauksille kirjoitettiin testit. Lopuksi toteutetut testit asetettiin suoritettaviksi aina lähdekoodin muuttuessa versionhallinnassa.
Testausstrategiassa määriteltiin testauksen periaatteet ja esimerkkitapauksia erityyppisistä testeistä lisättiin osaksi dokumentaatiota tulevan tekemisen tueksi.
Testausautomaatio toimi osana päivittäistä sovelluskehitystyötä. Käyttöönotetut työkalut madalsivat kynnystä kirjoittaa testejä, ja testien automatisointi paransi testaamisen laatua. Ohjelmavirheiden nopeampi havaitseminen helpotti virheiden korjaamista ja pienensi niiden korjaamisen kustannuksia.