Font Size: a A A

The Error Locating Method Based On The Execution Of The Program

Posted on:2013-02-25Degree:MasterType:Thesis
Country:ChinaCandidate:Z Y TianFull Text:PDF
GTID:2218330371459725Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
It is estimated that debugging consumes most time of software development and maintenance. Fault localization is the most important and difficult in debugging. In traditional methods the programmers often set breakpoints and check if the run-time states are right, but the drawback is that the programmers have a very large set of statements to check, and it is time-consuming. So the automated fault localization is proposed, these methods use well designed test cases, and then analyze the test result and program features to get the statements that are suspicious. Always the methods based on program spectra make use of the coverage information to get the suspicious statements, and then the programmer check the statements in the descending order of statement's suspicious.In order to improve the efficiency of methods base on program spectra, we make improvement to the existing methods and propose some new methods.Firstly, by comparing with the existing automatic fault localization methods, we propose some new methods based on program spectra. We propose Heuristic1 based on the thought that the contribution of one test case to a statement's suspicious should be decrease when the test case number increases. Thinking of the execution complement we propose Heuristic2 and Heuristic3. Based on the idea of Tarantula and contribution, we propose Heuristic4.Secondly, we proposed a general architecture for automated fault localization, in which the visualization component was used to help the developers to check the suspicious statements.Finally, we implemented a debugging tool Visualdebug to evaluate the efficiency of the approaches proposed in this paper by comparing with other methods.Compared with the existing methods having the same idea, the experimental results show that Heuristic1 is slightly better, other methods proposed in this paper only need to check 20 percent of the total executed statements in 60 percent of the Siemens suite. So the methods proposed in this paper can reduce the number of statements that need to be examined to find the faulty statement, and thus improve the effect of fault localization.
Keywords/Search Tags:fault localization, automated debugging, program coverage information, software test
PDF Full Text Request
Related items