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

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.