Font Size: a A A

Research On Regression Test Case Prioritization Method Based On Data Mining And Multi-Objective Optimization

Posted on:2022-02-27Degree:MasterType:Thesis
Country:ChinaCandidate:C X PanFull Text:PDF
GTID:2518306551971119Subject:Master of Engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of the software industry,the quality of software products has received eager attention from people.Software testing can effectively guarantee the quality of software products.Regression testing refers to retesting the modified software to ensure that no new defects are introduced due to the modification of the code.As an important part of software testing,regression testing can effectively improve software quality.However,as the number of iterations in the software development process increases,the size of the test case set increases,resulting in increasing the cost of regression testing.At present,domestic and foreign scholars have developed a variety of test case set optimization techniques to improve the efficiency of regression testing,and test case prioritization technology is one of the main technologies.By means of sorting test cases,test case prioritization technology makes test cases which are more likely to detect defects to be executed first to improve the speed of detecting defects and achieve the purpose of improving the efficiency of regression testing.At present,some existing test case prioritization technologies have the problem that the sorting information is not comprehensive or the sorting object is single.they can't comprehensively use various information to sort test cases.Based on the existing technologies,this paper proposes a regression test case prioritization method based on data mining technology and multi-objective optimization.The method combines the static and dynamic information of the test cases and considers multiple sorting objects.It is mainly divided into three stages: test case clustering,test case sorting,and test case priority adjusting dynamically.In the test case clustering stage,the hierarchical clustering algorithm is used to cluster the test case set according to the similarity of the test case text topics and the similarity of the code coverage.In the test case sorting stage,the multi-objective optimization algorithm NSGA-II is used to sort the test case set with the goals of maximizing the code coverage and the historical execution failure rate as well as minimizing the execution time.After the sorting is completed,the clustering results of the previous stage are used to adjust the sorting order,so that the test cases in the front part of the sorting sequence belong to different clusters and are the best-performing test cases in each cluster.In the dynamic adjustment stage of test case priority,the execution failure association rules between test cases are used to dynamically adjust the priority of test cases.In other words,when a test case fails in the executing process,the other test cases which have failed association rules with the failed test case and are not executed are adjusted to execute immediately to further increase the defect detection rate.The feasibility and effectiveness of the method were verified on the experimental data set.Experimental results showed that when the number of test cases executed was at most 50%,all known defects can be detected in all projects with using the method in this paper.the method in this paper has been run many times in each project,and the corresponding APFDc values are all above 0.7.Compared with the random method?the method base clustering?the method base topic model and the method base association rules and multi-objective optimization,the APFD value of the method in this paper increased by 13.17%,6.36%,3.12%and 3.14% respectively on average,and the APFDc value of the method in this paper increased by 17.59%,5.43%,5.18% and 8.36% respectively on average.
Keywords/Search Tags:Regression Testing, Test Case Prioritization, Multi-Objective Optimization, Test Case Clustering, Association Rule Mining
PDF Full Text Request
Related items