Font Size: a A A

Research On Execution Distance Measurement Based Software Debugging And Test Optimization

Posted on:2014-05-13Degree:MasterType:Thesis
Country:ChinaCandidate:L ZhangFull Text:PDF
GTID:2298330422979937Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Testing and debugging are key techniques for ensuring software quality. In software testing anddebugging, many import approaches are based on execution distance measurement. However, manyproblems exist in current researches on execution distance measurement based software debuggingand test case optimization.In software debugging, the nearest neighbor based (NN) method is an important fault localizationapproach, and it selects the nearest successful run for each failed run to compare and locate the faults.However, the effect of NN method sometimes significantly degrades and even unable to locate thebugs. We found that the effect of fault localization is highly related to the number of executiondifferences and the distance between the differences and bugs, and the NN method would get worseeffect easily though has minimal differences because of omitting the distance between the differencesand bugs. To resolve this problem, we propose a difference dispersion based (DD) fault localizationapproach which considers both the number of differences and the distance between differences andbugs. The results of the experiments show that the fault localization effect of the DD method is betterthan the NN method.In regression testing, the clustering based regression test case selection technique clusters theprogram executions into individual clusters and then uses specific selection strategy to optimize theregression test suites. However, the existing researches only considered the execution distancemeasurement which is based on0-1coverage. There are so far no clear answers to whether otherdistance measurements could get similar or even better effects, and whether the effects is better thanrandom clustering. This paper analyzes the effects of regression test case selection techniques whichare based on multiple distances and random clustering. The results of the experiments show that theeffects of the techniques which are based on execution distance measurements is similar and betterthan random clustering, and Ulam distance measurement get worse effect compared with others.We implemented a testing system based on LLVM, CodeSurfer, and Weka to support ourexperiments, which provides powerful supports for the researches on execution distancemeasurements based software debugging and testing.
Keywords/Search Tags:Software debugging, software testing, execution distance, fault localization, regressiontesting
PDF Full Text Request
Related items