Black Box -pelitestaaminen tekoälyn voimin
Moberg, Jeremias (2024)
Kandidaatintyö
Moberg, Jeremias
2024
School of Engineering Science, Tietotekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe20241217103623
https://urn.fi/URN:NBN:fi-fe20241217103623
Tiivistelmä
Kaikissa julkaistavissa ohjelmistoissa on bugeja. Pelien testausprosessi eroaa perinteisen ohjelmiston testauksesta, kun testattavana on perinteisen ohjelmakoodin lisäksi myös pelialueet sekä paljon graafisia elementtejä. Pelitestauksessa tekoälyn hyödyntäminen on vielä uutta, minkä vuoksi sen tutkimisella voidaan mahdollisesti nopeuttaa ja sujuvoittaa pelien testausprosessia.
Tässä työssä tutkitaan Black Box -pelitestaamista ja sitä, miten tekoälyä voidaan hyödyntää pelien testaamisprosessissa. Tutkimuksen tavoitteena on selvittää, mitä tekoälyratkaisuja voidaan käyttää bugien etsimiseen peleistä, ja pystyykö tekoäly luotettavasti löytämään bugeja peleistä. Ensimmäiseen kysymykseen etsitään vastausta jo aiemmin suoritetusta tutkimuksesta kirjallisuuskatsauksen avulla. Jälkimmäiseen kysymykseen vastausta lähdetään hakemaan laboratoriokokeen avulla, jossa koulutetaan tekoäly pelaamaan yksinkertaista peliä. Tämän jälkeen peliin piilotetaan bugeja, joita tekoäly laitetaan etsimään.
Tutkimuksen perusteella tekoälyä hyödynnetään niin regressiotestauksessa, pelialueen tutkimisessa ja validoinnissa, kuormitustestauksessa, kuin myös graafisen käyttöliittymän, pelin tekstin, äänen sekä tietenkin pelilogiikan testauksessa. Laboratoriotutkimuksen tulokset taas osoittavat, että vaikka yksittäisellä pelikerralla tekoäly ei välttämättä löydä bugeja, se kykenee ajallisesti pelaamaan jopa tuhansia pelejä samassa ajassa kuin manuaalisessa testauksessa pelataan yksi peli. Tämän takia tekoäly tutkii moninkertaisen määrän pelitiloja ihmistestaajaan verrattuna samassa ajassa, ja siten myös kohtaa bugeja näissä pelitiloissa. Näin ollen tekoäly kykenee luotettavasti löytämään peleistä bugeja. Every publishable software has bugs. The testing process of games differs from the testing of traditional software, when in addition to traditional code there are maps and a lot of graphical elements. In game testing utilizing artificial intelligence is new which means that researching it can potentially make the testing process of games quicker and more streamlined.
This thesis research Black Box game testing and how artificial intelligence can be utilized in the testing process of games. The goal of this research is to report on what artificial intelligence solutions can be used to find bugs in games, and can artificial intelligence reliably find bugs from games. The answer to the former question is researched through literature review. The latter question is answered by making a laboratory experiment, where an artificial intelligence is trained to play a simple game. Then bugs are hidden in the game, in which the artificial intelligence is made to explore.
Based on this research, artificial intelligence is being utilized in regression testing, exploring and validating maps, load testing, as well as testing graphical user interface, the text, sounds and of course the game logic. The results of the laboratory experiment show that even when artificial intelligence can’t reliably find bugs in isolated games, in terms of time it can simulate thousands of games during the same period when manual testing is done for one game. For this reason, artificial intelligence explores multiple times more game states when compared to human tester, thus encountering bugs in these states. Therefore, artificial intelligence can reliably find bugs from games.
Tässä työssä tutkitaan Black Box -pelitestaamista ja sitä, miten tekoälyä voidaan hyödyntää pelien testaamisprosessissa. Tutkimuksen tavoitteena on selvittää, mitä tekoälyratkaisuja voidaan käyttää bugien etsimiseen peleistä, ja pystyykö tekoäly luotettavasti löytämään bugeja peleistä. Ensimmäiseen kysymykseen etsitään vastausta jo aiemmin suoritetusta tutkimuksesta kirjallisuuskatsauksen avulla. Jälkimmäiseen kysymykseen vastausta lähdetään hakemaan laboratoriokokeen avulla, jossa koulutetaan tekoäly pelaamaan yksinkertaista peliä. Tämän jälkeen peliin piilotetaan bugeja, joita tekoäly laitetaan etsimään.
Tutkimuksen perusteella tekoälyä hyödynnetään niin regressiotestauksessa, pelialueen tutkimisessa ja validoinnissa, kuormitustestauksessa, kuin myös graafisen käyttöliittymän, pelin tekstin, äänen sekä tietenkin pelilogiikan testauksessa. Laboratoriotutkimuksen tulokset taas osoittavat, että vaikka yksittäisellä pelikerralla tekoäly ei välttämättä löydä bugeja, se kykenee ajallisesti pelaamaan jopa tuhansia pelejä samassa ajassa kuin manuaalisessa testauksessa pelataan yksi peli. Tämän takia tekoäly tutkii moninkertaisen määrän pelitiloja ihmistestaajaan verrattuna samassa ajassa, ja siten myös kohtaa bugeja näissä pelitiloissa. Näin ollen tekoäly kykenee luotettavasti löytämään peleistä bugeja.
This thesis research Black Box game testing and how artificial intelligence can be utilized in the testing process of games. The goal of this research is to report on what artificial intelligence solutions can be used to find bugs in games, and can artificial intelligence reliably find bugs from games. The answer to the former question is researched through literature review. The latter question is answered by making a laboratory experiment, where an artificial intelligence is trained to play a simple game. Then bugs are hidden in the game, in which the artificial intelligence is made to explore.
Based on this research, artificial intelligence is being utilized in regression testing, exploring and validating maps, load testing, as well as testing graphical user interface, the text, sounds and of course the game logic. The results of the laboratory experiment show that even when artificial intelligence can’t reliably find bugs in isolated games, in terms of time it can simulate thousands of games during the same period when manual testing is done for one game. For this reason, artificial intelligence explores multiple times more game states when compared to human tester, thus encountering bugs in these states. Therefore, artificial intelligence can reliably find bugs from games.
