{"title":"An Extensive Study on Multi-Priority Algorithm in Test Case Prioritization and Reduction","authors":"Longbo Li, Yanhui Zhou, Yuan Yuan, Shenghua Wu","doi":"10.1145/3456126.3456135","DOIUrl":null,"url":null,"abstract":"Although test case prioritization and reduction are two different problems in regression testing, they are essentially interrelated. To improve the effectiveness of regression testing, we need to perform fewer test cases, and hope to detect program faults as early as possible. However, most existing techniques haven't proposed a better solution to solve these two issues at the same time. In this paper, we present a multi-priority algorithm combine mutation testing and clustering techniques, and use clustering techniques to put test cases with similar fault-detection ability into a cluster, the multi-priority algorithm selects a high-priority test in each cluster. The results show that the multi-priority algorithm not only reduces a large number of test cases, but also obtains the results of test case prioritization better than greedy algorithm and random reduction method. Especially, the average reduction size of test cases is 40.23% in total 556018 test cases, and removing test cases that trigger real program faults only accounts for 0.7435% of all tests. Our method achieves a greater reduction in the number of test cases at the expense of a mini loss of in fault-detection ability. The effectiveness of test case prioritization is 2.63% higher than other methods. In addition, we find that the different number of clusters affect the effectiveness of test case prioritization and reduction in regression testing. 1","PeriodicalId":431685,"journal":{"name":"2021 2nd Asia Service Sciences and Software Engineering Conference","volume":"29 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-02-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 2nd Asia Service Sciences and Software Engineering Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3456126.3456135","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Although test case prioritization and reduction are two different problems in regression testing, they are essentially interrelated. To improve the effectiveness of regression testing, we need to perform fewer test cases, and hope to detect program faults as early as possible. However, most existing techniques haven't proposed a better solution to solve these two issues at the same time. In this paper, we present a multi-priority algorithm combine mutation testing and clustering techniques, and use clustering techniques to put test cases with similar fault-detection ability into a cluster, the multi-priority algorithm selects a high-priority test in each cluster. The results show that the multi-priority algorithm not only reduces a large number of test cases, but also obtains the results of test case prioritization better than greedy algorithm and random reduction method. Especially, the average reduction size of test cases is 40.23% in total 556018 test cases, and removing test cases that trigger real program faults only accounts for 0.7435% of all tests. Our method achieves a greater reduction in the number of test cases at the expense of a mini loss of in fault-detection ability. The effectiveness of test case prioritization is 2.63% higher than other methods. In addition, we find that the different number of clusters affect the effectiveness of test case prioritization and reduction in regression testing. 1