PHP-ohjelmiston käyttöliittymä-, kuormitus- ja yksikkötestaus
Niemi, Miika (2017)
Niemi, Miika
Savonia-ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2017090814919
https://urn.fi/URN:NBN:fi:amk-2017090814919
Tiivistelmä
Työn aiheena oli Finnish Net Solutions Oy:n ylläpitämän eläinlääkäriohjelmiston yksikkö-, kuormitus- ja käyttöliittymätestien automatisointi. Työn tarkoitus oli toteuttaa ohjelmalliset testit niiltä osin, kuin oli aikataulun myötä mahdollista, ja tutkia mahdollisuuksia niiden automaattiseen suorittamiseen. Automaattisten testien tarkoituksena oli vähentää ohjelmiston testaukseen kuluvaa aikaa ja pitää yllä hyvä virheiden havaitsemistarkkuus.
Käyttöliittymä ja yksikkötestit toteutettiin Codeception-testauskehyksellä. Codeception valittiin, koska sama testauskehys soveltui käyttöliittymä- ja yksikkötesteihin. Myös hyvät dokumentaatiot ja asennuksen helppous puolsivat päätöstä. Kuormitustestauksen toteutukseen valittiin Gatling-työkalu, koska se oli helppo asentaa. Myös testien alkuun saamisen helppous johtivat tämän valintaan.
Työn prioriteetti oli käyttöliittymätestit. Käyttöliittymän toimintojen testauksesta haluttiin toteuttaa ohjelmallisesti mahdollisimman suuri osa, koska toimintojen manuaalinen testaus vie paljon aikaa. Yksikkötestauksen tavoite muuttui työn aikana, sillä niiden toteutukselle ei nähty tarvetta. Kuormitustestaus haluttiin toteuttaa ohjelmiston uudelle etusivulle, joka oltiin julkaisemassa pian työn aloittamisen jälkeen. Tarkoituksena oli testata, kuinka uusi etusivu tulisi suoriutumaan ohjelmistoon kohdistuvista käyttäjämääristä.
Työn lopputuloksena saatiin ohjelmalliset testit noin viidellekymmenelle prosentille käyttöliittymän toiminnoista. Käyttöliittymän toimintojen testaukseen kuluva aika väheni useita tunteja. Yksikkötestejä toteutettiin muutaman esimerkin verran niiden mahdollista myöhempää jatkamista varten. Kuormitustesti saatiin toteutettua vanhalle etusivulle. Uusi etusivu julkaistiin, ennen kuin sen kuormitustesti ehdittiin toteuttaa.
Käyttöliittymä ja yksikkötestit toteutettiin Codeception-testauskehyksellä. Codeception valittiin, koska sama testauskehys soveltui käyttöliittymä- ja yksikkötesteihin. Myös hyvät dokumentaatiot ja asennuksen helppous puolsivat päätöstä. Kuormitustestauksen toteutukseen valittiin Gatling-työkalu, koska se oli helppo asentaa. Myös testien alkuun saamisen helppous johtivat tämän valintaan.
Työn prioriteetti oli käyttöliittymätestit. Käyttöliittymän toimintojen testauksesta haluttiin toteuttaa ohjelmallisesti mahdollisimman suuri osa, koska toimintojen manuaalinen testaus vie paljon aikaa. Yksikkötestauksen tavoite muuttui työn aikana, sillä niiden toteutukselle ei nähty tarvetta. Kuormitustestaus haluttiin toteuttaa ohjelmiston uudelle etusivulle, joka oltiin julkaisemassa pian työn aloittamisen jälkeen. Tarkoituksena oli testata, kuinka uusi etusivu tulisi suoriutumaan ohjelmistoon kohdistuvista käyttäjämääristä.
Työn lopputuloksena saatiin ohjelmalliset testit noin viidellekymmenelle prosentille käyttöliittymän toiminnoista. Käyttöliittymän toimintojen testaukseen kuluva aika väheni useita tunteja. Yksikkötestejä toteutettiin muutaman esimerkin verran niiden mahdollista myöhempää jatkamista varten. Kuormitustesti saatiin toteutettua vanhalle etusivulle. Uusi etusivu julkaistiin, ennen kuin sen kuormitustesti ehdittiin toteuttaa.