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
Link To Document