Font Size: a A A

Fault Localization Technique Based On Program Mutations

Posted on:2017-03-27Degree:MasterType:Thesis
Country:ChinaCandidate:Q WangFull Text:PDF
GTID:2308330485957894Subject:Computer technology
Abstract/Summary:PDF Full Text Request
It is a well-known difficulty of software development that how to locate the position of error code in the program when we found that the software does not run correctly. CBFL techniques can locate the error area by analyzing the successes and failures of test coverage information and results. Firstly, CBFL would endow a suspicion value of each statement, which indicates the probability of error that the statement contained. Then we can get a sequence of error statement’s suspicion based on the magnitude of the value of suspicion. The location of error statement in the incorrect statement of suspicion list always can be used to evaluation the performance of fault location technique, and a good fault location technique can row the error statement in a high position, which means that the programmer can easily find the location which contains error in the program only by checking a small amount of codes.There are considerable researches on CBFL techniques recently and some researchers have proposed different approaches to improve the effectiveness of fault localization. Gong Dandan introduced a test—suite reduction approach for fault localization effectiveness. Vidroha Debroy proposed a statement grouping strategy to improve the effectiveness of fault localization techniques. In all the above approaches, researchers did not take into account the influence of coincidentally correct test case, which means that test case executed the faulty statement but detected no error during the execution of the test. In recent years, some researchers pointed out that coincidental correctness occurs frequently and coincidental correct tests have negative effect on the performance of fault localization techniques in most cases.Aiming at this problem, this paper put forward a software mutation based on fault localization techniques to improve the effectiveness of fault location. This technique introduces the concept of variation effect on the basis of the original CBFL location method, where we can use variance analysis to correct the location of the error code. Specifically, it is divided into three steps:Firstly, the candidate mutant statement can be confirmed by coverage information and the result of the test cases. Then we carry out mutation analysis the candidate mutant statement and to calculate the variance of each variance statement. Finally, we can get the incorrect statement of suspicion list in this paper by the the TarantulaM method.This paper makes use of 123 incorrect versions of the 7 benchmark programs that are widely used in the field of error code research to carry out experimental validation.Then analysis and comparison the traditional CBFL techniques and the methods proposed by us in the advantage and disadvantage of fault location accuracy and time cost. The experimental results showed that, when compared to traditional fault location techniques of error code, the technique can effectively reduce the negative impact of accidental successful test cases and significantly improve the accuracy of fault location.But as the cost of improve efficiency, more time is needed.The verification on real error also proves the good effect of the technique in practical application, by fault location technique based on program variation, the cost of programmer’s fault location can reduced by 64.27%.
Keywords/Search Tags:Fault Localization, Program Mutation Analysis, Accidental Successful Test Cases
PDF Full Text Request
Related items