Automaatioskriptin luonti testityökaluksi
Räisänen, Tomi (2024)
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2024120332541
https://urn.fi/URN:NBN:fi:amk-2024120332541
Tiivistelmä
Opinnäytetyön tavoitteena oli nopeuttaa ja yksinkertaistaa Qvantel-yrityksen manuaalitestaajien testi-datan luontia luomalla automaatioskripti, joka luo testidatan automaattisesti asetettujen asetusten mu-kaan. Taustalla oli jo valmiiksi tehty testidatanluonti skripti, jota ei ollut ylläpidetty. Vanhaa skriptiä ei myöskään paljoa ollut käytetty sen monien puutteiden ja vaikean käytettävyyden vuoksi. Tavoitteena oli päivittää skripti ajan tasalle, yksinkertaistaa sen käyttö ja luoda kattava dokumentaatio sen käytön ja yllä-pidon edistämiseksi.
Automaatioskriptin kehittämiseen käytettiin PyCharm-nimistä työkalua ja Robot Framework -automaatiokehystä. Robot Framework -kirjasto nimeltä SeleniumLibrary valittiin käyttöön sen laajan se-laintestaukseen keskittyvien avainsanojen vuoksi. Automaatioskriptin ajaminen integroitiin Jenkins-työkaluun, josta monia muita toimenpiteitä kuten monitorointia voitiin toteuttaa.
Työn tuloksena saatiin aikaiseksi automaatioskripti, jolla pystyy luomaan erilaista testidataa. Testidatan asetukset pystytään asettamaan Jenkins-työkalusta, jotka vaikuttavat siihen millaisen testidatan skripti luo. Skriptin ajo pystytään tämän jälkeen käynnistämään myös Jenkins-työkalusta. Työn aikana automaa-tioskripti saatiin takaisin ajan tasalle ja manuaalitestaajien käyttöön. Skriptiä yksinkertaistettiin ja muuta-ma aikaisemmassa versiossa ollut rajoitus saatiin korjattua.
Vaikeuksia oli kuitenkin saada skripti luomaan testidataa nopeammin kuin manuaalisesti. Nopeutta testa-tessa automaatioskripti oli hitaampi silloin, kun testidataa luotiin vähän. Skripti oli sitä kilpailukykyisempi mitä enemmän testidataa luotiin. Ajallinen hyöty skriptistä saadaan silloin, kun testaaja tekee muita testi-valmisteluja samaan aikaan, kun automaatioskripti luo testidataa. Suurin osa työn tavoitteista saavutettiin, mutta joitain tavoitteita oli tiputettava pois ajan puutteen takia.
Automaatioskriptin kehittämiseen käytettiin PyCharm-nimistä työkalua ja Robot Framework -automaatiokehystä. Robot Framework -kirjasto nimeltä SeleniumLibrary valittiin käyttöön sen laajan se-laintestaukseen keskittyvien avainsanojen vuoksi. Automaatioskriptin ajaminen integroitiin Jenkins-työkaluun, josta monia muita toimenpiteitä kuten monitorointia voitiin toteuttaa.
Työn tuloksena saatiin aikaiseksi automaatioskripti, jolla pystyy luomaan erilaista testidataa. Testidatan asetukset pystytään asettamaan Jenkins-työkalusta, jotka vaikuttavat siihen millaisen testidatan skripti luo. Skriptin ajo pystytään tämän jälkeen käynnistämään myös Jenkins-työkalusta. Työn aikana automaa-tioskripti saatiin takaisin ajan tasalle ja manuaalitestaajien käyttöön. Skriptiä yksinkertaistettiin ja muuta-ma aikaisemmassa versiossa ollut rajoitus saatiin korjattua.
Vaikeuksia oli kuitenkin saada skripti luomaan testidataa nopeammin kuin manuaalisesti. Nopeutta testa-tessa automaatioskripti oli hitaampi silloin, kun testidataa luotiin vähän. Skripti oli sitä kilpailukykyisempi mitä enemmän testidataa luotiin. Ajallinen hyöty skriptistä saadaan silloin, kun testaaja tekee muita testi-valmisteluja samaan aikaan, kun automaatioskripti luo testidataa. Suurin osa työn tavoitteista saavutettiin, mutta joitain tavoitteita oli tiputettava pois ajan puutteen takia.