Font Size: a A A

Researches And Applies On Test Case Prioritization In Regression Testing

Posted on:2021-04-10Degree:MasterType:Thesis
Country:ChinaCandidate:J N XuFull Text:PDF
GTID:2428330611962829Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the vigorous development of the Internet,our daily lives are inseparable from the Internet,and a variety of software provides convenience for our lives.With the increase of the same type of software in the software market,increasing user viscosity has become very important.When software products with similar functions appear in the market at the same time,every detail of the software may become the key to user growth,such as running fluency and compatibility.Therefore,in order to improve the market competitiveness of software,the quality of software has become a very important part.Software testing,as one of the important means to ensure the quality of software,is an indispensable link in every software.With the expansion of the software scale,the number of iterations of the version increases.Regression testing has become the most important part of actual software testing.Moreover,it has been found that regression testing accounts for a large proportion of the software development testing cycle.Therefore,in recent years,an important part of software testing The research direction is to reduce the cost of regression testing.At present,the mainstream research direction of regression testing is to prioritize test cases.The sorted test cases can detect software defects earlier.The main research direction of this article is also the test case prioritization techniques.Based on learning the source code based test case priority ordering algorithm and the combination weighting method to calculate the weight,a new source code based test case prioritization techniques is proposed.And apply and verify the algorithms in actual engineering.The new sorting strategy mainly includes two parts: calculating combination weights and test case sorting.Based on the in-depth research on the above-mentioned proposed technologies,this article mainly does the following parts:(1)Weight calculation based on combined weighting methodAfter researching the three basic algorithms for test case prioritization techniques based on source code(Total,Additional,and 2-Optimal),it is found that the basic algorithm has problems such as poor stability,so the idea of fusing the basic algorithm is proposed.The influencing factors of this strategy are divided into two layers: the firstlevel influencing factor is APFD values of each strategy algorithm(Average Percentage of Fault Detect,namely the ability of each algorithm to Detect error test cases)and the time required for ordering;the second-level influencing factors are classified into three types of test cases,such as the test cases with detected defects,test cases with code changes,and general test cases.Calculating the first-level weight requires firstly constructing a comparison matrix between each factor and each algorithm,calculating the subjective weight.And then running the basic algorithm multiple times to objectively construct a comparison matrix,standardize the data,calculate the objective weight.Finally,the final data weight is obtained through weight fusion.The secondary weights are calculated by constructing a subjective comparison matrix.(2)Test case prioritizationThe first-level weight corresponds to the weight of each basic algorithm,and the second-level weight is the weight between different types of test cases.After the secondlevel weights are used to multiply the position of the test cases that using the basic algorithm sort,each test case can get three different sorted position weights.Then use the first-level weights and position weights to get the three position weights of each test case at the corresponding proportion of each algorithm.Add the three position weights and arrange them in ascending order to get the final combination-based weight test case prioritization techniques.(3)Experimental verificationIn order to verify the effectiveness of the test case prioritization proposed in this paper,this paper selects SIR datasets for comparison experiments,and verifies that compared with the basic algorithm,the proposed algorithm is less random than the basic algorithm and has a higher ability to detect defects for basic algorithms.(4)Engineering application examplesThe test case prioritization techniques proposed in this paper is applied to actual engineering.Select the two projects in the actual development process,collect the data required for testing according to the requirements.The test case prioritization techniques proposed in this paper is used to sort.The execution of test cases in order,analyze the application results,and proves that the prioritization strategy of test cases based on combined weighting method has practical value.
Keywords/Search Tags:Regression testing, Test case prioritization, Combined weighting method, Code coverage
PDF Full Text Request
Related items