DocumentCode
239071
Title
Comparative analysis of classical multi-objective evolutionary algorithms and seeding strategies for pairwise testing of Software Product Lines
Author
Lopez-Herrejon, Roberto Erick ; Ferrer, Javier ; Chicano, Francisco ; Egyed, Alexander ; Alba, Enrique
Author_Institution
Software Syst. Eng., Johannes Kepler Univ., Linz, Austria
fYear
2014
fDate
6-11 July 2014
Firstpage
387
Lastpage
396
Abstract
Software Product Lines (SPLs) are families of related software products, each with its own set of feature combinations. Their commonly large number of products poses a unique set of challenges for software testing as it might not be technologically or economically feasible to test of all them individually. SPL pairwise testing aims at selecting a set of products to test such that all possible combinations of two features are covered by at least one selected product. Most approaches for SPL pairwise testing have focused on achieving full coverage of all pairwise feature combinations with the minimum number of products to test. Though useful in many contexts, this single-objective perspective does not reflect the prevailing scenario where software engineers do face trade-offs between the objectives of maximizing the coverage or minimizing the number of products to test. In contrast and to address this need, our work is the first to propose a classical multi-objective formalisation where both objectives are equally important. In this paper, we study the application to SPL pairwise testing of four classical multi-objective evolutionary algorithms. We developed three seeding strategies - techniques that leverage problem domain knowledge - and measured their performance impact on a large and diverse corpus of case studies using two well-known multi-objective quality measures. Our study identifies the performance differences among the algorithms and corroborates that the more domain knowledge leveraged the better the search results. Our findings enable software engineers to select not just one solution (as in the case of single-objective techniques) but instead to select from an array of test suite possibilities the one that best matches the economical and technological constraints of their testing context.
Keywords
evolutionary computation; program testing; software product lines; SPL pairwise testing; classical multiobjective evolutionary algorithms; classical multiobjective formalisation; comparative analysis; domain knowledge; economical constraints; multiobjective quality measures; pairwise feature combinations; seeding strategies; software product line pairwise testing; technological constraints; Context; Evolutionary computation; Frequency modulation; Sociology; Statistics; Testing; Vectors;
fLanguage
English
Publisher
ieee
Conference_Titel
Evolutionary Computation (CEC), 2014 IEEE Congress on
Conference_Location
Beijing
Print_ISBN
978-1-4799-6626-4
Type
conf
DOI
10.1109/CEC.2014.6900473
Filename
6900473
Link To Document