Testaus osana modernia web-sovelluskehitystä
Köykkä, Lassi (2022)
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2022120827239
https://urn.fi/URN:NBN:fi:amk-2022120827239
Tiivistelmä
Tämän opinnäytetyön tarkoituksena oli tutkailla ohjelmistotestausta yleisellä tasolla, sekä kehittää olemassa olevan web-sovelluksen testausmenetelmiä ja työkaluja. Tavoitteena oli edistää sovelluksen testausta ja samalla auttaa parantamaan tuotteen laatua ja luotettavuutta. Sovellukseen päätettiin lisätä päätoiminnallisuuksien päästä päähän -testaaminen, jonka lisäksi käyttöliittymän komponenttien yksikkö-, ja integraatiotestaamista olisi jatkokehitettävä. Päästä päähän -testaus on testausmenetelmä, jossa ohjelman toimivuus testataan tyypillisen käyttötilanteen alusta loppuun. Yksikkötestauksessa testataan yksittäisen ohjelman osan toimivuus itsenäisesti, kun taas Integraatiotestauksessa eri ohjelman osien toimivuutta yhdessä osana jotakin isompaa kokonaisuutta.
Päästä päähän -testaus toteutettiin käyttämällä Cypress-testaustyökalua. Cypress on päästä päähän -testausta varten kehitetty työkalu, jolla voidaan imitoida tyypillisesti käyttäjän tekemiä toimintoja, kuten hiiren liikuttamista ja kirjoittamista. Sovelluksen React-komponenttien yksikkö- ja integraatiotestaus oli aikaisemmin toteutettu käyttäen suosittua JavaScript-testauskirjastoa Jestiä, mutta se oli osoittautunut varsin työlääksi, joten se päätettiin korvata Cypressin uudella komponenttitestaus toiminnolla. React on Facebookin kehittämä JavaScript-kirjasto, jolla voi rakentaa käyttöliittymiä.
Työn aikana tutustuttiin erilaisiin web-sovelluksen testaustyökaluihin ja implementointiin projektiin päästä päähän -testaus käyttäen Cypressiä. Näillä uusilla päästä päähän -testeillä pystyttiin onnistuneesti varmistamaan asiakkaan majoitusvaraussovelluksen kirjautumisprosessin, ja mökkien hakemisen, sekä varaamisen toimivuus. Samalla lisättiin uusi tehokkaampi tapa luoda komponenttitestejä käyttäen Cypressiä vanhan rinnalle.
Sovelluksen kehittäjät olivat tyytyväisiä Cypressin toiminnallisuuksiin ja kokivat päästä päähän -testien kirjoittamisen Cypressillä nopeaksi ja helpoksi tavaksi testata sovelluksen eri toimintoja.
Päästä päähän -testaus toteutettiin käyttämällä Cypress-testaustyökalua. Cypress on päästä päähän -testausta varten kehitetty työkalu, jolla voidaan imitoida tyypillisesti käyttäjän tekemiä toimintoja, kuten hiiren liikuttamista ja kirjoittamista. Sovelluksen React-komponenttien yksikkö- ja integraatiotestaus oli aikaisemmin toteutettu käyttäen suosittua JavaScript-testauskirjastoa Jestiä, mutta se oli osoittautunut varsin työlääksi, joten se päätettiin korvata Cypressin uudella komponenttitestaus toiminnolla. React on Facebookin kehittämä JavaScript-kirjasto, jolla voi rakentaa käyttöliittymiä.
Työn aikana tutustuttiin erilaisiin web-sovelluksen testaustyökaluihin ja implementointiin projektiin päästä päähän -testaus käyttäen Cypressiä. Näillä uusilla päästä päähän -testeillä pystyttiin onnistuneesti varmistamaan asiakkaan majoitusvaraussovelluksen kirjautumisprosessin, ja mökkien hakemisen, sekä varaamisen toimivuus. Samalla lisättiin uusi tehokkaampi tapa luoda komponenttitestejä käyttäen Cypressiä vanhan rinnalle.
Sovelluksen kehittäjät olivat tyytyväisiä Cypressin toiminnallisuuksiin ja kokivat päästä päähän -testien kirjoittamisen Cypressillä nopeaksi ja helpoksi tavaksi testata sovelluksen eri toimintoja.
