Title
Bucketing Failing Tests via Symbolic Analysis.
Abstract
A common problem encountered while debugging programs is the overwhelming number of test cases generated by automated test generation tools, where many of the tests are likely to fail due to same bug. Some coarse-grained clustering techniques based on point of failure PFB and stack hash CSB have been proposed to address the problem. In this work, we propose a new symbolic analysis-based clustering algorithm that uses the semantic reason behind failures to group failing tests into more \"meaningful\" clusters. We implement our algorithm within the KLEE symbolic execution engine; our experiments on 21 programs drawn from multiple benchmark-suites show that our technique is effective at producing more fine grained clusters as compared to the FSB and CSB clustering schemes. As a side-effect, our technique also provides a semantic characterization of the fault represented by each cluster--a precious hint to guide debugging. A user study conducted among senior undergraduates and masters students further confirms the utility of our test clustering method.
Year
DOI
Venue
2017
10.1007/978-3-662-54494-5_3
FASE
Field
DocType
Volume
Programming language,Computer science,Theoretical computer science,Symbolic data analysis,Hash function,Symbolic execution,Test case,Cluster analysis,Path condition,Debugging
Conference
10202
ISSN
Citations 
PageRank 
0302-9743
2
0.41
References 
Authors
15
4
Name
Order
Citations
PageRank
Van-Thuan Pham11045.35
Sakaar Khurana220.41
Subhajit Roy34510.84
Abhik Roychoudhury42449122.18