• 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