Font Size: a A A

Learning-to-rank Fault Localization Method Based On Program Spectrum

Posted on:2022-04-17Degree:MasterType:Thesis
Country:ChinaCandidate:T S LiFull Text:PDF
GTID:2518306548961249Subject:Master of Engineering
Abstract/Summary:PDF Full Text Request
Fault localization is the key and nodus of software debugging.Spectrum Based Fault Localization(SBFL)is one of the most effective methods for SBFL because of its simple operation and high efficiency.Generally,the SBFL method calculates the suspiciousness value of the tested program statement by the suspiciousness formula,and then sorts and locates the software faults according to this.Suspiciousness formula is the key to locating efficiency and accuracy.However,studies have shown that there is no single suspiciousness formula that applies to all program structures and types of faults.Therefore,building an efficient fault localization model based on learning-to-rank technique and genetic programming to achieve efficient fault localization has become a current research hotspot.In the learning-to-rank fault localization method based on the program spectrum,how to generate an effective program spectrum feature set to train a high-precision fault localization model has become a difficult way.In response to this problem,this paper starts from the perspective of the feature construction of the fault localization model,carries out in-depth research,and proposes a learning-to-rank fault localization method based on Relief and m RMR respectively.The fault localization method based on Relief selects formulas with strong fault revealing ability through the weight calculation to construct the model feature set.The m RMR-based fault localization method uses the m RMR to construct the model feature set.The suspiciousness formula in the feature set not only has a high correlation with program faults,but also has the least correlation with each other.Experiments results and the comparison of acc@n show that,it is found that compared with the SBFL method that only reply the learning-to-rank technique,the two methods increase the fault detection rate by about 23.4% and 28.9% at top-10 respectively.The main works of this paper are summarized as follows:(1)A learning-to-rank fault localization method based on Relief is proposed.From the perspective of feature construction,the fault localization model feature set is constructed by integrating the suspiciousness formula with a larger weight value and the program spectrum,utilize the adaptability and robustness of the machine learning model to improve the efficiency of fault localization.Experimental results show that this method can improve the efficiency of the learning-to-rank fault localization.Compared to traditional SBFL methods such as Jaccard and Naish1,this method detects faults faster,and only needs to check about 70% of the code in the list of suspiciousness statements to find all faults.(2)A learning-to-rank fault localization method based on the mRMR algorithm is proposed.The new method uses m RMR to select a set of feature subsets that are highly correlated with the expected output and have low correlation with each other in the original feature set of the fault localization model to improve the accuracy of fault localization.The experimental results show that,due to the increased consideration of the correlation among formulas,this method can locate about 80.34% of program faults when the code checked rate is 20%,which increases the fault detection rate by about 17.89% compared with Relief.And compared with the GP13 formula,the fault detection rate at top-10 is increased by about 43.7%.(3)A set of experimental prototype system was developed and the algorithm proposed in this paper was implemented.According to the modular design concept,the prototype system is divided into four parts: configuration module,common function module,function implements module and documentation module.The experimental platform supports automated operation from test case execution to output locating efficiency.
Keywords/Search Tags:fault localization, genetic program, mRMR, Relief, learning-to-rank
PDF Full Text Request
Related items