Automated Regression Testing for Cloud Based Mobile Games
Tuisku, Sampo (2020)
Tuisku, Sampo
2020
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-2020112424073
https://urn.fi/URN:NBN:fi:amk-2020112424073
Tiivistelmä
Automaatiotestaus on erityisen tärkeää videopelien pilvipalveluille pelien ison määrän vuoksi. Kaikkien näiden pelien yhteensopivuus pilvipalvelun kanssa tulee testata uudelleen aina palvelun uuden version julkaisun jälkeen. Uusien julkaisujen myötä näissä peleissä saattaa ilmetä ongelmia. Kun pelit pilvialustalla lisääntyvät, manuaalisen testauksen tarve kasvaa ja testausprosessi hidastuu. Insinöörityön tavoitteena oli löytää ratkaisu nopeuttaa tämä testiprosessi automatisoinnilla. Työ tehtiin suurelle kansainväliselle yritykselle.
Testausongelman ratkaisemiseksi kirjoitettiin skripti, joka nauhoittaa toimivan version pelin manuaalisen pelisession kosketukset ja kuvat. Käyttämällä näitä tallennettuja kosketuksia aina uuden version julkaisun yhteydessä pelit pystyttäisiin pelaamaan automaation avulla ja samalla tallentamaan myös kuvat. Vertaamalla automaation kuvia manuaalisen pelisession kuviin uuden version julkaisun mahdollisesti aiheuttamat ongelmat voitaisiin löytää helposti ja nopeasti.
Testiautomaation prototyyppi kehitettiin Python-ohjelmointikielellä, ja myöhemmin se yhdistettiin pilvipalvelun koodiin. Työtä tehdessä todettiin, että tämä ratkaisu voi olla mahdollinen, mutta ei vielä testituloksien kannalta järkevä ongelman kompleksisuuden vuoksi. Projektin pääongelmat ilmenivät automatisoidun ja manuaalisen session testaustarkkuudessa ja kosketustapahtumien toiston tehokkuudessa. Testiautomaation implementaation ja ideoiden avulla asiakasyritys voi hyötyä tuloksista tulevaisuudessa, jos yritys haluaa tätä testiautomaatiotyötä jatkaa.
Testausongelman ratkaisemiseksi kirjoitettiin skripti, joka nauhoittaa toimivan version pelin manuaalisen pelisession kosketukset ja kuvat. Käyttämällä näitä tallennettuja kosketuksia aina uuden version julkaisun yhteydessä pelit pystyttäisiin pelaamaan automaation avulla ja samalla tallentamaan myös kuvat. Vertaamalla automaation kuvia manuaalisen pelisession kuviin uuden version julkaisun mahdollisesti aiheuttamat ongelmat voitaisiin löytää helposti ja nopeasti.
Testiautomaation prototyyppi kehitettiin Python-ohjelmointikielellä, ja myöhemmin se yhdistettiin pilvipalvelun koodiin. Työtä tehdessä todettiin, että tämä ratkaisu voi olla mahdollinen, mutta ei vielä testituloksien kannalta järkevä ongelman kompleksisuuden vuoksi. Projektin pääongelmat ilmenivät automatisoidun ja manuaalisen session testaustarkkuudessa ja kosketustapahtumien toiston tehokkuudessa. Testiautomaation implementaation ja ideoiden avulla asiakasyritys voi hyötyä tuloksista tulevaisuudessa, jos yritys haluaa tätä testiautomaatiotyötä jatkaa.