DocumentCode :
1226158
Title :
Search Algorithms for Regression Test Case Prioritization
Author :
Li, Zheng ; Harman, Mark ; Hierons, Robert M.
Author_Institution :
Dept. of Comput. Sci., King´´s Coll. London
Volume :
33
Issue :
4
fYear :
2007
fDate :
4/1/2007 12:00:00 AM
Firstpage :
225
Lastpage :
237
Abstract :
Regression testing is an expensive, but important, process. Unfortunately, there may be insufficient resources to allow for the reexecution of all test cases during regression testing. In this situation, test case prioritization techniques aim to improve the effectiveness of regression testing by ordering the test cases so that the most beneficial are executed first. Previous work on regression test case prioritization has focused on greedy algorithms. However, it is known that these algorithms may produce suboptimal results because they may construct results that denote only local minima within the search space. By contrast, metaheuristic and evolutionary search algorithms aim to avoid such problems. This paper presents results from an empirical study of the application of several greedy, metaheuristic, and evolutionary search algorithms to six programs, ranging from 374 to 11,148 lines of code for three choices of fitness metric. The paper addresses the problems of choice of fitness metric, characterization of landscape modality, and determination of the most suitable search technique to apply. The empirical results replicate previous results concerning greedy algorithms. They shed light on the nature of the regression testing search space, indicating that it is multimodal. The results also show that genetic algorithms perform well, although greedy approaches are surprisingly effective, given the multimodal nature of the landscape
Keywords :
genetic algorithms; greedy algorithms; program testing; search problems; evolutionary search algorithm; fitness metric; genetic algorithm; greedy algorithm; metaheuristics; regression testing; test case prioritization technique; Cost function; Fault detection; Genetic algorithms; Greedy algorithms; Libraries; Software testing; Search techniques; regression testing.; test case prioritization;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2007.38
Filename :
4123325
Link To Document :
بازگشت