Concrete hyperheuristic framework for test case prioritization. Issue 11 (17th September 2018) - Bian, Yi; Li, Zheng; Guo, Junxia; Zhao, Ruilian
Abstract: Test case prioritization (TCP), which aims to find the optimal test case execution sequences for specific testing objects, has been widely used in regression testing. A wide variety of search methodologies and algorithms have been proposed to optimize test case execution sequences, namely, search‐based TCP. However, different algorithms perform differently and have different implementation costs and specific situations where an algorithm usually performs with high effectiveness and efficiency. When facing a new testing scenario, it is actually difficult to decide which algorithm is suitable. In this paper, to address the algorithm selection problem for different test scenarios, a more generally applicable algorithm based on a hyperheuristic strategy is proposed for search‐based TCP. This includes a range of multiobjective algorithms with a variety of crossover strategies and a learning agent strategy to evaluate and select the appropriate algorithm execution sequence dynamically for different scenarios. The concrete hyperheuristic framework for multiobjective TCP is presented with an algorithm's repository in the low level and the learning agent strategy in the higher level. Experiments show that the proposed learning agent strategy can accurately evaluate algorithms in multiobjective problems and select the appropriate algorithm in each iteration. Abstract : A concrete hyperheuristic framework for multiobjective test case prioritization (MoTCP) that can adapt to changing testing scenarios was presented. Eighteen solutions are formed in the low level constructed by the combination of three multiobjective evolutionary algorithms with six crossovers and a learning agent in the high level that can select appropriate solutions dynamically. The experimental results indicate that the hyperheuristic algorithm is effective and efficient.