DocumentCode :
2074717
Title :
Practical fault localization for dynamic web applications
Author :
Artzi, Shay ; Dolby, Julian ; Tip, Frank ; Pistoia, Marco
Author_Institution :
T.J. Watson Res. Center, IBM, Yorktown Heights, NY, USA
Volume :
1
fYear :
2010
fDate :
2-8 May 2010
Firstpage :
265
Lastpage :
274
Abstract :
We leverage combined concrete and symbolic execution and several fault-localization techniques to create a uniquely powerful tool for localizing faults in PHP applications. The tool automatically generates tests that expose failures, and then automatically localizes the faults responsible for those failures, thus overcoming the limitation of previous fault-localization techniques that a test suite be available upfront. The fault-localization techniques we employ combine variations on the Tarantula algorithm with a technique based on maintaining a mapping between statements and the fragments of output they produce. We implemented these techniques in a tool called Apollo, and evaluated them by localizing 75 randomly selected faults that were exposed by automatically generated tests in four PHP applications. Our findings indicate that, using our best technique, 87.7% of the faults under consideration are localized to within 1% of all executed statements, which constitutes an almost five-fold improvement over the Tarantula algorithm.
Keywords :
program testing; software fault tolerance; Tarantula algorithm; concrete execution; dynamic Web applications; practical fault localization; symbolic execution; Browsers; Concrete; Databases; HTML; Open source software; Servers;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering, 2010 ACM/IEEE 32nd International Conference on
Conference_Location :
Cape Town
ISSN :
0270-5257
Print_ISBN :
978-1-60558-719-6
Type :
conf
DOI :
10.1145/1806799.1806840
Filename :
6062094
Link To Document :
بازگشت