Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta

Mutaatiotestaus on keino parantaa ohjelmistotestauksessa käytettyjä testijoukkoja hyödyntäen ohjelmistoon automaattisesti generoituja virheitä. Sitä pidetään parhaimpana – mutta myös resurssivaatimuksiltaan raskaimpana – tapana tavoitella vahvinta mahdollista testijoukkoa. Mutaatiotestauksesta pelik...

Täydet tiedot

Bibliografiset tiedot
Päätekijä: Sinkkonen, Saska
Muut tekijät: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Aineistotyyppi: Pro gradu
Kieli:fin
Julkaistu: 2022
Aiheet:
Linkit: https://jyx.jyu.fi/handle/123456789/81029
_version_ 1828193047875158016
author Sinkkonen, Saska
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Sinkkonen, Saska Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Sinkkonen, Saska Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Sinkkonen, Saska
datasource_str_mv jyx
description Mutaatiotestaus on keino parantaa ohjelmistotestauksessa käytettyjä testijoukkoja hyödyntäen ohjelmistoon automaattisesti generoituja virheitä. Sitä pidetään parhaimpana – mutta myös resurssivaatimuksiltaan raskaimpana – tapana tavoitella vahvinta mahdollista testijoukkoa. Mutaatiotestauksesta pelikehityksen kontekstissa on hyvin vähän tutkimusta ja tämän tutkielman tavoitteena on antaa alustavia tuloksia Unity-pelimoottorille spesifisti suunnitellun mutaatiotestauksen tehokkuudesta. Tutkielmassa suunniteltiin Unityn ohjelmointirakenteisiin pohjautuva joukko mutaatio"-operaattoreita ja kehitettiin työkalu, joka mahdollisti mutaatiotestauksen niitä käyttäen. Työkalulla saatuja tuloksia verrattiin perinteiseen mutaatiotyökaluun. Unity-spesifi mutaatiotestaus todettiin huomattavasti nopeammaksi ja vähemmän manuaalista työtä vaativaksi generoitujen mutanttien vähäisemmän määrän vuoksi. Toisaalta perinteisellä mutaatiotestauksella tuotettu testijoukko vaikutti kokeen tulosten perusteella kattavammalta. Kumpikaan testijoukko ei yksinään ollut kuitenkaan hyvin kattava. Siksi tärkeimpänä tuloksena pidettiin, että Unity-pelien tehokasta testausta varten Unity-spesifiä ja perinteistä mutaatiotestausta on käytettävä yhdessä. Tutkimuksen empiirinen osa toteutettiin kuitenkin hyvin suppealla aineistolla ja siksi esiteltiin myös huomattava määrä jatkotutkimusaiheita, joihin pitäisi perehtyä ennen tarkempien päätelmien tekemistä. Mutation testing is a technique used to improve software test sets by automatically generating errors into a program's source code. It is considered the best – but also most resource-intensive – way to achieve the strongest possible test set. There is very little research done on mutation testing in the context of game development and the aim of this thesis is to provide preliminary results on the effectiveness of mutation testing specifically designed for the Unity game engine. A set of mutation operators based on Unity programming structures was designed and a tool which enabled mutation testing using them was developed. The results obtained with the tool were compared with ones of a traditional mutation tool. Unity-specific mutation was found to be significantly faster and needing less manual work due to the lower number of mutants generated. On the other hand, based on the results of the experiment traditional mutation seemed to produce a stronger test set. However, neither test set alone was very comprehensive. Therefore the main conclusion was that for effective testing of Unity-games, Unity-specific mutation should be used in conjunction with traditional mutation. However, the empirical part of the study was conducted with a very limited data set and because of that multiple topics for further research were presented. These topics should be explored before drawing more detailed conclusions.
first_indexed 2022-05-12T20:03:29Z
format Pro gradu
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Valmari, Antti", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Sinkkonen, Saska", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2022-05-12T06:54:55Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2022-05-12T06:54:55Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2022", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/81029", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Mutaatiotestaus on keino parantaa ohjelmistotestauksessa k\u00e4ytettyj\u00e4 testijoukkoja hy\u00f6dynt\u00e4en ohjelmistoon automaattisesti generoituja virheit\u00e4. Sit\u00e4 pidet\u00e4\u00e4n parhaimpana \u2013 mutta my\u00f6s resurssivaatimuksiltaan raskaimpana \u2013 tapana tavoitella vahvinta mahdollista testijoukkoa. Mutaatiotestauksesta pelikehityksen kontekstissa on hyvin v\u00e4h\u00e4n tutkimusta ja t\u00e4m\u00e4n tutkielman tavoitteena on antaa alustavia tuloksia Unity-pelimoottorille spesifisti suunnitellun mutaatiotestauksen tehokkuudesta.\n\nTutkielmassa suunniteltiin Unityn ohjelmointirakenteisiin pohjautuva joukko mutaatio\"-operaattoreita ja kehitettiin ty\u00f6kalu, joka mahdollisti mutaatiotestauksen niit\u00e4 k\u00e4ytt\u00e4en. Ty\u00f6kalulla saatuja tuloksia verrattiin perinteiseen mutaatioty\u00f6kaluun. \nUnity-spesifi mutaatiotestaus todettiin huomattavasti nopeammaksi ja v\u00e4hemm\u00e4n manuaalista ty\u00f6t\u00e4 vaativaksi generoitujen mutanttien v\u00e4h\u00e4isemm\u00e4n m\u00e4\u00e4r\u00e4n vuoksi. Toisaalta perinteisell\u00e4 mutaatiotestauksella tuotettu testijoukko vaikutti kokeen tulosten perusteella kattavammalta. Kumpikaan testijoukko ei yksin\u00e4\u00e4n ollut kuitenkaan hyvin kattava. Siksi t\u00e4rkeimp\u00e4n\u00e4 tuloksena pidettiin, ett\u00e4 Unity-pelien tehokasta testausta varten Unity-spesifi\u00e4 ja perinteist\u00e4 mutaatiotestausta on k\u00e4ytett\u00e4v\u00e4 yhdess\u00e4. Tutkimuksen empiirinen osa toteutettiin kuitenkin hyvin suppealla aineistolla ja siksi esiteltiin my\u00f6s huomattava m\u00e4\u00e4r\u00e4 jatkotutkimusaiheita, joihin pit\u00e4isi perehty\u00e4 ennen tarkempien p\u00e4\u00e4telmien tekemist\u00e4.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Mutation testing is a technique used to improve software test sets by automatically generating errors into a program's source code. It is considered the best \u2013 but also most resource-intensive \u2013 way to achieve the strongest possible test set. There is very little research done on mutation testing in the context of game development and the aim of this thesis is to provide preliminary results on the effectiveness of mutation testing specifically designed for the Unity game engine.\n\nA set of mutation operators based on Unity programming structures was designed and a tool which enabled mutation testing using them was developed. The results obtained with the tool were compared with ones of a traditional mutation tool. Unity-specific mutation was found to be significantly faster and needing less manual work due to the lower number of mutants generated. On the other hand, based on the results of the experiment traditional mutation seemed to produce a stronger test set. However, neither test set alone was very comprehensive. Therefore the main conclusion was that for effective testing of Unity-games, Unity-specific mutation should be used in conjunction with traditional mutation. However, the empirical part of the study was conducted with a very limited data set and because of that multiple topics for further research were presented. These topics should be explored before drawing more detailed conclusions.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Paivi Vuorio (paelvuor@jyu.fi) on 2022-05-12T06:54:55Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2022-05-12T06:54:55Z (GMT). No. of bitstreams: 0\n Previous issue date: 2022", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "69", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.format.mimetype", "value": "application/pdf", "language": null, "element": "format", "qualifier": "mimetype", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.subject.other", "value": "mutaatiotestaus", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "pelitestaus", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "Unity", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.title", "value": "Alustavia havaintoja Unity-spesifist\u00e4 mutaatiotestauksesta", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "master thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202205122675", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Pro gradu -tutkielma", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Master\u2019s thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietotekniikka", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Mathematical Information Technology", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_bdcc", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "masterThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "602", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "testaus", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "pelit", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.format.content", "value": "fulltext", "language": null, "element": "format", "qualifier": "content", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}, {"key": "dc.type.okm", "value": "G2", "language": null, "element": "type", "qualifier": "okm", "schema": "dc"}]
id jyx.123456789_81029
language fin
last_indexed 2025-03-31T20:01:57Z
main_date 2022-01-01T00:00:00Z
main_date_str 2022
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/1ba0007a-7839-43c1-8871-cba89230633e\/download","text":"URN:NBN:fi:jyu-202205122675.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2022
record_format qdc
source_str_mv jyx
spellingShingle Sinkkonen, Saska Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta mutaatiotestaus pelitestaus Unity Tietotekniikka Mathematical Information Technology 602 testaus pelit
title Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
title_full Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
title_fullStr Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
title_full_unstemmed Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
title_short Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
title_sort alustavia havaintoja unity spesifistä mutaatiotestauksesta
title_txtP Alustavia havaintoja Unity-spesifistä mutaatiotestauksesta
topic mutaatiotestaus pelitestaus Unity Tietotekniikka Mathematical Information Technology 602 testaus pelit
topic_facet 602 Mathematical Information Technology Tietotekniikka Unity mutaatiotestaus pelit pelitestaus testaus
url https://jyx.jyu.fi/handle/123456789/81029 http://www.urn.fi/URN:NBN:fi:jyu-202205122675
work_keys_str_mv AT sinkkonensaska alustaviahavaintojaunityspesifistämutaatiotestauksesta