• DocumentCode
    2441993
  • Title

    iTree: Efficiently discovering high-coverage configurations using interaction trees

  • Author

    Song, Charles ; Porter, Adam ; Foster, Jeffrey S.

  • Author_Institution
    Comput. Sci. Dept., Univ. of Maryland, College Park, MD, USA
  • fYear
    2012
  • fDate
    2-9 June 2012
  • Firstpage
    903
  • Lastpage
    913
  • Abstract
    Software configurability has many benefits, but it also makes programs much harder to test, as in the worst case the program must be tested under every possible configuration. One potential remedy to this problem is combinatorial interaction testing (CIT), in which typically the developer selects a strength t and then computes a covering array containing all t-way configuration option combinations. However, in a prior study we showed that several programs have important high-strength interactions (combinations of a subset of configuration options) that CIT is highly unlikely to generate in practice. In this paper, we propose a new algorithm called interaction tree discovery (iTree) that aims to identify sets of configurations to test that are smaller than those generated by CIT, while also including important high-strength interactions missed by practical applications of CIT. On each iteration of iTree, we first use low-strength CIT to test the program under a set of configurations, and then apply machine learning techniques to discover new interactions that are potentially responsible for any new coverage seen. By repeating this process, iTree builds up a set of configurations likely to contain key high-strength interactions. We evaluated iTree by comparing the coverage it achieves versus covering arrays and randomly generated configuration sets. Our results strongly suggest that iTree can identify high-coverage sets of configurations more effectively than traditional CIT or random sampling.
  • Keywords
    combinatorial mathematics; learning (artificial intelligence); program testing; CIT; combinatorial interaction testing; efficiently discovering high coverage configurations; high strength interactions; iTree; interaction tree discovery; machine learning techniques; potential remedy; software configurability; Arrays; Clustering algorithms; Decision trees; Instruments; Machine learning; Software engineering; Testing; Empirical Software Engineering; Software Configurations; Software Testing and Analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2012 34th International Conference on
  • Conference_Location
    Zurich
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4673-1066-6
  • Electronic_ISBN
    0270-5257
  • Type

    conf

  • DOI
    10.1109/ICSE.2012.6227129
  • Filename
    6227129