Heigl, S. (2023). Predicting mutation-scores with a cheap quality model [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2023.82021
E194 - Institut für Information Systems Engineering
-
Date (published):
2023
-
Number of Pages:
116
-
Keywords:
predicting mutation-scores; systematic mapping study; code coverage; test smells; cheap quality model; random forest; machine learning; software testing
en
Abstract:
Eine gute Test-Suite zu halten ist wichtig, da ansonsten ein Software-Projekt unwartbar werden kann. Es gibt mehrere Techniken, um die Qualität einer Test-Suite zu bestimmen, wobei Mutation Testing die bedeutendste ist. Mutation Testing hat aber Nachteile, der größte davon ist die Laufzeit, die es für große Software-Projekte unpraktisch macht. Diese Arbeit versucht dieses Problem zu umgehen, indem ein neues Qualitätsmodell aufgebaut wird, das die Ergebnisse von Mutation Testing auf der Grundlage anderer Evaluierungsmetriken für Test-Suiten vorhersagt. Zuerst wurde eine Systematic Mapping Study durchgeführt, um Methoden zur Evaluierung von Test-Suiten zu ermitteln. Die gefundenen Methoden wurden hinsichtlich ihrer Fähigkeit, Mutation Scores vorherzusagen, bewertet. Anschließend wurden sie verwendet, um ein neues Qualitätsmodell mithilfe von Machine Learning aufzubauen. Mehrere Regressionsalgorithmen wurden evaluiert. Es gibt viele Methoden zur Bestimmung der Test-Suite-Qualität. Diese Arbeit fand 56 Test-Suite Evaluierungsmetriken. Die meisten dieser Veröffentlichungen verwenden entweder Mutation Testing oder eine Art von Code Coverage. Breitere Forschung zum Thema Test-Suite-Evaluation begann 2013. Mehrere Coverage Metriken und Test Smells wurden hinsichtlich ihrer Fähigkeit, Mutation Scores vorherzusagen, evaluiert. Die meisten von ihnen sind nicht dazu in der er Lage Mutation Scores vorherzusagen. Nur Branch Coverage zeigte mit einem R2 von ~0.65 ein vielversprechendes Ergebnis. Die Verwendung von Random Forest zur Kombination von Test-Suite Evaluierungsmetriken führte zum besten Qualitätsmodell. Dieses Modell ist um etwa 50% besser als die beste Test-Suite Evaluierungsmetrik allein. Die Verwendung weiterer Test-Suite Evaluierungsmetrik im Random Forest Modell erhöht die Qualität nur geringfügig. Das neue Qualitätsmodell, das in dieser Arbeit vorgestellt wird, bietet eine effektive Möglichkeit, Mutation Testing Ergebnisse vorherzusagen. In der Praxis kann dieses Modell genutzt werden, um die Testzeit von Software-Projekten zu verbessern, währenddessen eine qualitative Aussagen zur Test-Suite-Qualität immer noch gegeben ist.
de
Keeping a good test-suite is important, otherwise a software project may get unmaintainable. There are several techniques to determine the quality of a test-suite, with mutation testing being the most significant one. But mutation testing has its disadvantages, the major one being runtime which prevents it from being practical for large software projects. This thesis aims to circumvent this problem by building a novel quality model that predicts mutation testing results based on other test-suite evaluation metrics. First a systematic mapping study was conducted to determine methods to evaluate test-suites. The found methods were evaluated, in terms of ability to predict mutation scores. Then they were used to build a novel quality framework using machine learning. Several regression algorithms were evaluated. There are a lot of methods to determine test-suite quality. This study found 56 metrics that do that. Most of these publications either use mutation testing or some kind of coverage. More intense research into the topic of test-suite evaluation started in 2013. Several coverages and test smells haven been evaluated, in terms of how well they predict mutation scores. Most of them have no meaningful ability to predict mutation score. Only branch coverage showed some promise with a R2 of ~0.65. Using random forest to combine test-suite evaluation methods lead to the best quality model. It is about 50% better than the best test-suite evaluation method on its own. Using more test-suite evaluation methods increases the random forest model only slightly. The novel quality model presented in this thesis provides an effective way to predict mutation testing results. Practitioners can use this model to improve the test time of their projects, while still having qualitative feedback about their test-suite quality.
en
Additional information:
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers