Regressiotestauksen automatisointi Playwrightilla
Grönroos, Katariina (2025)
Grönroos, Katariina
2025
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-2025052716840
https://urn.fi/URN:NBN:fi:amk-2025052716840
Tiivistelmä
Tämän opinnäytetyön tavoitteena oli kehittää yrityksen ohjelmistotestausta automatisoimalla regressiotestausta. Toiminnallinen työ tehtiin toimeksiantona osana työsuhdetta terveydenhuoltoalan yritykselle kevään 2025 aikana. Työ rajattiin järjestelmä- ja hyväksyntätestauksen tasoihin, eikä siihen sisältynyt testaustyökalun valintaa. Testattava tuote on verkkokauppa-alusta, jonka kautta käyttäjät voivat tehdä tilauksia.
Tietoperustassa käsiteltiin ohjelmistotuotannon kehitysmenetelmiä sekä ohjelmistotuotantoprosessia yleisesti, joiden jälkeen pääpaino oli ohjelmistotestauksessa. Testauksesta käsiteltiin testaustasot, keskeiset testausmenetelmät ja tutustuttiin testaukseen osana laadunvarmistusta. Lisäksi käytiin läpi testauksen automatisointia, sekä sen hyötyjä ja haittoja.
Kehitysprojekti alkoi nykytilanteen kartoituksella, minkä jälkeen suunniteltiin testauksen automatisointia priorisoimalla tärkeimpiä testattavia toimintoja. Tämän jälkeen testausympäristö pystytettiin paikallisesti ja aloitettiin testien kirjoittaminen hyödyntäen tekoälypohjaista GitHub Copilot -työkalua.
Työn tuloksena syntyi Playwright-ohjelmistolla luotu automatisoitu testisetti. Valmiit testit integroitiin osaksi yrityksen CI/CD-putkea niin, että niitä ajetaan aina julkaisujen yhteydessä yrityksen testiympäristöissä. Lopuksi tehdystä työstä laadittiin kirjallinen ohjeistus yritykselle testiautomaation käyttöönotosta. Ohjelmistoa ja tehtyä työtä esiteltiin tiimille erillisessä koulutustilaisuudessa.
Opinnäytetyölle asetetut tavoitteet saavutettiin. Regressiotestaus saatiin automatisoitua ja luodut testit otettiin mukaan yrityksen päivittäiseen kehitystyöhön. Saadun palautteen mukaan työ oli hyödyllinen, sillä vastaavat regressiotestit olivat puuttuneet aiemmin kokonaan. Projekti oli mielenkiintoinen ja opettavainen, sekä tarjosi monia jatkokehitysmahdollisuuksia.
Tietoperustassa käsiteltiin ohjelmistotuotannon kehitysmenetelmiä sekä ohjelmistotuotantoprosessia yleisesti, joiden jälkeen pääpaino oli ohjelmistotestauksessa. Testauksesta käsiteltiin testaustasot, keskeiset testausmenetelmät ja tutustuttiin testaukseen osana laadunvarmistusta. Lisäksi käytiin läpi testauksen automatisointia, sekä sen hyötyjä ja haittoja.
Kehitysprojekti alkoi nykytilanteen kartoituksella, minkä jälkeen suunniteltiin testauksen automatisointia priorisoimalla tärkeimpiä testattavia toimintoja. Tämän jälkeen testausympäristö pystytettiin paikallisesti ja aloitettiin testien kirjoittaminen hyödyntäen tekoälypohjaista GitHub Copilot -työkalua.
Työn tuloksena syntyi Playwright-ohjelmistolla luotu automatisoitu testisetti. Valmiit testit integroitiin osaksi yrityksen CI/CD-putkea niin, että niitä ajetaan aina julkaisujen yhteydessä yrityksen testiympäristöissä. Lopuksi tehdystä työstä laadittiin kirjallinen ohjeistus yritykselle testiautomaation käyttöönotosta. Ohjelmistoa ja tehtyä työtä esiteltiin tiimille erillisessä koulutustilaisuudessa.
Opinnäytetyölle asetetut tavoitteet saavutettiin. Regressiotestaus saatiin automatisoitua ja luodut testit otettiin mukaan yrityksen päivittäiseen kehitystyöhön. Saadun palautteen mukaan työ oli hyödyllinen, sillä vastaavat regressiotestit olivat puuttuneet aiemmin kokonaan. Projekti oli mielenkiintoinen ja opettavainen, sekä tarjosi monia jatkokehitysmahdollisuuksia.