Font Size: a A A

Research On Fault Location Method Based On Branch Count Spectrum And Failed Test Case

Posted on:2021-04-10Degree:MasterType:Thesis
Country:ChinaCandidate:R J ChengFull Text:PDF
GTID:2428330605481172Subject:Computer technology
Abstract/Summary:PDF Full Text Request
Whether at work or in daily life,people are becoming more and more dependent on software,so they pay more attention to the quality of software.Fault location is one of the effective means to improve the quality of software,with the goal of finding out the fault statement in the program.Using automated fault location technology can effectively improve the efficiency of fault location and greatly reduce the cost of software development.The spectrum-based fault location method has low calculation complexity and high degree of automation,which is currently a more effective method in software testing.The spectrum-based fault location method utilizes the dynamic execution information of the program statement to locate the fault statement that causes the program to be abnormal.At present,most traditional spectrum-based fault location methods are all based on the coverage spectrum of the program.These methods only consider whether the program covers statements during execution,and ignore the branch count of the statement,which also affects the effect of fault location.In addition,the program spectrum is composed of dynamic information and execution results of executable statements in the program,including successful test cases and failed test cases.Successful test cases mean that the fault statement is not executed,or the fault statement does not affect the execution result,while the failed test cases are caused by the fault statement.If the successful test case and the failed test case are analyzed together,the statements in the successful test case will interfere with the suspicious values of the statements in the failed test case.This paper studies the fault location method based on the branch count spectrum and failed test cases.The main work of this thesis is:(1)A fault location method based on branch count spectrum is proposed.In large-scale software,each program statement is not only run once in many cases.The branch count of the statement during the program run will affect the calculation of the suspicious value of the statement.To solve this problem,a fault location method based on branch count spectrum is proposed.This method mainly collects the branch count spectrum of the statement when the program is executed by executing test cases,Then change the execution result of the test case in which the execution information of the successful test case and the failed test case are exactly the same,input the branch count spectrum into the neural network model for training,it can automatically output the suspicious value of each program statement,and find out fault statement.The efficiency of fault location is improved.(2)A fault location method based on failed test cases is proposed.For the branch count spectrum,the executable statements in the successful test case will interfere with the calculation of the suspicious value of the fault statement.To solve this problem,a fault location method based on the failed test case is proposed.This method is mainly to obtain the function call relationship graph of the failed test case,calculate the suspicious value of the function to sort the function,and then use the executable statements of the failed test case to build a complex network,calculate the suspicious value of each statement,and locate the fault statements in the program.It improves the efficiency of defect location.(3)Designed and implemented a software fault location platform.According to the fault location method proposed in the thesis,a fault location platform is designed and implemented Experiments are carried out with a UAV control station system as an example to verify the effectiveness of the proposed fault location methods and the practicability of the platform.
Keywords/Search Tags:fault location, branch count spectrum, neural network model, function call relationship, failed test case
PDF Full Text Request
Related items