Font Size: a A A

Research On Test Data Generation For Regression Testing Search-Based

Posted on:2020-02-18Degree:MasterType:Thesis
Country:ChinaCandidate:L GaoFull Text:PDF
GTID:2428330590978399Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the increasing importance of software application in various industries,the requirements for software scale and quality are also increasing.Software testing is currently the main means of software quality assurance,of which regression testing generally accounts for 80% of the total cost of testing,so it is necessary to improve the efficiency of regression testing.In the software life cycle,due to frequent software updates,the original test data often can't cover the newly added or modified parts of the software,thus failing to reveal the defects or potential errors in the software.In order to ensure the completeness of the original test data set to the new version of the software,it needs to be expanded.Aiming at the different problems in the process of regression test data generation,this thesis proposes a test data generation method adapted to various scenarios by using search-based test data generation technology,and verifies the feasibility of the method in specific scenarios through experiments.The research work are as follows:1.In the scenario of regression testing after program defect repair,a method for generating regression data set based on memetic algorithm is proposed for the problem that the test data generation process is easy to fall into local optimum.The test execution analysis for the Java program extracts the theoretical path set,and detects the reachable path based on the correlation and then optimizes the order of reachable path set,so as to obtain the coverage target path set.The regression test data generation model is established according to the path coverage criterion,and the memetic algorithm is adopted to generate the test data.Different methods were applied to five benchmark programs for comparison experiments.The results show that the coverage rate of the method increases by 14.4% on average,and the generation time increases by 57% on average,which improves the efficiency of test data generation to some extent.2.In the scenario of regression testing after the newly added functional modules of the software system.It is difficult for the original test data to meet the requirements of the new version of software testing in regression testing,thus a search-based hierarchical regression test data set augmentation method is proposed.The coverage target is extracted from the method and statement level successively,and the Bayesian theory is used to prioritize the coverage target method set,and then the static analysis is carried out to extract the target path,and finally the memetic algorithm is used to generate the test data for the target path set.Compared with random method,genetic method,and particle swarm optimization algorithm,the experimental results show that the efficiency of the memetic method increases by at least 50.5%,the error detection capability of the test data increases by at least 18.2%,which provides a way to improve the adequacy of test data sets effectively.3.Aiming at the problem of multitask regression test data generation and huge of test objects,a Spark-based multifactor evolutionary regression test data set generation method was proposed.The multifactor evolutionary algorithm is used to generate test data by using the distributed elastic dataset of the Spark framework to decompose and deliver the target task set to each node,and then start each cluster node in the Spark distributed environment.The method is applied to five benchmark programs and compared with the independent search-based method.Experiment proves that the method can effectively solve the multitask problem,and the generation efficiency is at least increased by 3 times.4.According to the different test data generation methods proposed in this thesis,the sequence diagram and interaction diagram in UML unified modeling language are used to complete the modeling of the system,and a prototype system for regression test data generation was designed and developed.
Keywords/Search Tags:regression test, test data generation, path coverage, memetic algorithm, Spark
PDF Full Text Request
Related items