Analysing the fitness landscape of search-based software testing problems

A Aleti, I Moser, L Grunske - Automated Software Engineering, 2017 - Springer
Automated Software Engineering, 2017Springer
Search-based software testing automatically derives test inputs for a software system with
the goal of improving various criteria, such as branch coverage. In many cases, evolutionary
algorithms are implemented to find near-optimal test suites for software systems. The result
of the search is usually received without any indication of how successful the search has
been. Fitness landscape characterisation can help understand the search process and its
probability of success. In this study, we recorded the information content, negative slope …
Abstract
Search-based software testing automatically derives test inputs for a software system with the goal of improving various criteria, such as branch coverage. In many cases, evolutionary algorithms are implemented to find near-optimal test suites for software systems. The result of the search is usually received without any indication of how successful the search has been. Fitness landscape characterisation can help understand the search process and its probability of success. In this study, we recorded the information content, negative slope coefficient and the number of improvements during the progress of a genetic algorithm within the EvoSuite framework. Correlating the metrics with the branch and method coverages and the fitness function values reveals that the problem formulation used in EvoSuite could be improved by revising the objective function. It also demonstrates that given the current formulation, the use of crossover has no benefits for the search as the most problematic landscape features are not the number of local optima but the presence of many plateaus.
Springer