<div class="csl-bib-body">
<div class="csl-entry">Slamanig, B. (2025). <i>Machine Learning for Test Case Priorization</i> [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2025.98644</div>
</div>
-
dc.identifier.uri
https://doi.org/10.34726/hss.2025.98644
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/219634
-
dc.description
Arbeit an der Bibliothek noch nicht eingelangt - Daten nicht geprüft
-
dc.description
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers
-
dc.description.abstract
Im Rahmen dieser Arbeit wird ein Reinforcement Learning System entwickelt, um Testfälle für Regressionstests zu priorisieren. Das System reduziert die Anzahl der auszuführenden Testfälle bei gleichbleibender Fehlererkennung. Dieser Ansatz ist auf jedes Projekt anwendbar, das Regressionstests über mehrere Zyklen hinweg umfasst. Ein wichtiger Aspekt dieser Arbeit ist der Vergleich verschiedener maschineller Lernverfahren, die zur Priorisierung von Testfällen eingesetzt werden. Die Arbeit bietet eine Analyse der modernsten maschinellen Lernsysteme, die ähnliche Herausforderungen angehen und identifiziert und wählt die vielversprechendsten Lösungen für eine weitere Evaluierung aus.Vier verschiedene Ansätze zur Priorisierung von Testfällen werden in dieser Arbeit untersucht. Bei der ersten Lösung handelt es sich um einen Ansatz ohne maschinelles Lernen, der direkt die Fehlerrate zur Priorisierung von Testfällen nutzt. Zwei weitere Ansätze nutzen supervised learning, um das Problem zu lösen. Die vierte Lösung schließlich basiert auf Reinforcement Learning. Bei jedem Regressionsschritt ermöglichen diese Lösungen die Priorisierung allerTestfälle, wobei nur die am höchsten eingestuften Fälle ausgeführt werden. Bei Ansätzen, die auf maschinellem Lernen basieren, wird das Ergebnis der ausgeführten Testfälle verwendet,um die Priorisierung für den nächsten Regressionsschritt zu verfeinern. Die vorgeschlagenen Lösungen werden miteinander sowie mit ähnlichen Ansätzen aus der bestehenden Forschung verglichen.
de
dc.description.abstract
In the context of this thesis, a reinforcement learning system is developed to prioritize test cases for regression testing. The system reduces the number of test cases that need to be executed, while maintaining the same level of fault detection. This approach is applicable to any project involving regression testing across multiple cycles. A key aspect of this work involves comparing various machine learning techniques used to prioritize test cases. The thesis provides an analysis of state-of-the-art machine learning systems that address similar challenges, identifying and selecting the most promising solutions for further evaluation. Four distinct approaches to test case prioritization are explored in this thesis.The first solution is a non-machine learning approach that directly utilizes the failure rate to prioritize test cases. Two additional approaches leverage supervised learning techniques to address the problem. Finally, the fourth solution is based on reinforcement learning. At each regression step, these solutions enable the prioritization of all test cases, with only the highest-ranked ones being executed. In machine learning-based approaches, the outcome of executed test cases is used to refine the prioritization for the next regression step. The proposed solutions are compared with each other, as well as with similar approaches from existing research.