arrow
返回

iTree: Efficiently Discovering High-Coverage Configurations Using Interaction Trees

delete2014-03-01
delete27
delete
OA
AI
C
Charles Song *
A
Adam Porter
J
Jeffrey S. Foster
DOI:10.1109/TSE.2013.55delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
Modern software systems are increasingly configurable. While this has many benefits, it also makes some software engineering tasks, such as software testing, much harder. This is because, in theory, unique errors could be hiding in any configuration, and, therefore, every configuration may need to undergo expensive testing. As this is generally infeasible, developers need cost-effective technique for selecting which specific configurations they will test. One popular selection approach is combinatorial interaction testing (CIT), where the developer selects a strength t and then computes a covering array (a set of configurations) in which all t-way combinations of configuration option settings appear at least once. In prior work, we demonstrated several limitations of the CIT approach. In particular, we found that a given system's effective configuration space-the minimal set of configurations needed to achieve a specific goal-could comprise only a tiny subset of the system's full configuration space. We also found that effective configuration space may not be well approximated by t-way covering arrays. Based on these insights we have developed an algorithm called interaction tree discovery (iTree). iTree is an iterative learning algorithm that efficiently searches for a small set of configurations that closely approximates a system's effective configuration space. On each iteration iTree tests the system on a small sample of carefully chosen configurations, monitors the system's behaviors, and then applies machine learning techniques to discover which combinations of option settings are potentially responsible for any newly observed behaviors. This information is used in the next iteration to pick a new sample of configurations that are likely to reveal further new behaviors. In prior work, we presented an initial version of iTree and performed an initial evaluation with promising results. This paper presents an improved iTree algorithm in greater detail. The key improvements are based on our use of composite proto-interactions-a construct that improves iTree's ability to correctly learn key configuration option combinations, which in turn significantly improves iTree's running time, without sacrificing effectiveness. Finally, the paper presents a detailed evaluation of the improved iTree algorithm by comparing the coverage it achieves versus that of covering arrays and randomly generated configuration sets, including a significantly expanded scalability evaluation with the similar to 1M-LOC MySQL. Our results strongly suggest that the improved iTree algorithm is highly scalable and can identify a high-coverage test set of configurations more effectively than existing methods.
Keyword:
Empirical software engineering
software configurations
software testing and analysis
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

IEEE Transactions on Software Engineering 封面图
IEEE Transactions on Software Engineering
IF:
5.6
论文数:
2.8K
被引数:
1.1W

机构

University System of Maryland 封面图
University System of Maryland
学者数:
6.4W
论文数: 5.6W
被引数: 113
引用论文

引用论文

Techniques for classifying executions of deployed software to support software engineering tasks
err2007-05-01
err28
PREAI
errHaran, Murali; Karr, Alan; Last, Michael; Orso, Alessandro; Porter, Adam A.; Sanil, Ashish; Fouche, Sandro
err分享
err收藏
err
IF0
err
err0
PREAI
err
err分享
err收藏
err分享
err收藏
Skoll: A process and infrastructure for distributed continuous quality assurance
err2007-08-01
err26
PREAI
errPorter, Adam; Yilmaz, Cemal; Memon, Atif M.; Schmidt, Douglas C.; Natarajan, Bala
err分享
err收藏
err
IF0
err
err0
PREAI
err
err分享
err收藏
Nuclear emulsion with excellent long-term stability developed for cosmic-ray imaging
err2020-06-01
err0
PREAI
errAkira Nishio; Kunihiro Morishima; Ken-ichi Kuwabara; Tetsuo Yoshida; Takeshi Funakubo; Nobuko Kitagawa; Mitsuaki Kuno; Yuta Manabe; Mitsuhiro Nakamura
err分享
err收藏
学者 查看更多内容