Assigning Test Priority to Modules Using Code-Content and Bug History

Published online: Apr 19, 2022 Full Text: PDF (3.05 MiB) DOI: 10.24138/jcomss-2021-0185
Cite this paper
Ermira Daka, Egzon Mustafa


Regression testing is a process that is repeated after every change in the program. Prioritization of test cases is an important process during regression test execution. Nowadays, there exist several techniques that decide which of the test cases will run first as per their priority levels, while increasing the probability of finding bugs earlier in the test life cycle. However, sometimes algorithms used to select important test cases may stop searching in local minima while missing the rest of the tests that might be important for a given change. To address this limitation further, we propose a domain-specific model that assigns testing priority to classes in applications based on developers' judgments for priority. Moreover, our technique which takes into consideration applications' code content and bug history, relates these features to overall class priority for testing. In the end, we test the proposed approach with a new (unknown) dataset of 20 instances. The predicted results are compared with developers' priority score and saw that this metric can prioritize correctly 70% of classes under test.


Regression testing, Machine Learning, Test prioritization, Bug history, Code complexity
Creative Commons License 4.0
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.