Font Size: a A A

Research On Combinatorial Regression Test Case Prioritization Method Based On Search Strategy And Its Application In Software Product Line

Posted on:2022-04-09Degree:MasterType:Thesis
Country:ChinaCandidate:Y Y XuFull Text:PDF
GTID:2518306506963569Subject:Computer technology
Abstract/Summary:PDF Full Text Request
Software Product Line(SPL)engineering is about developing a set of related software products by reusing a common set of features.Products in an SPL are differentiated by their features,where a feature defines capabilities of a software system.SPLs are often represented through feature models.Feature models capture the information of all the possible products of the SPL in terms of features and relationships among them.An SPL test case can be defined as a product(i.e.,a set of features)of SPL to be tested.However,the high number of feature combinations in SPLs may lead to thousands or even millions of different products,which makes exhaustive testing infeasible.To reduce the testing effort,techniques using combinatorial interaction testing(CIT)have been proposed and proven to be effective.In addition,CIT is costly to apply due to the combinatorial explosion and the calculation of the feature combinations.Thus,when facing the limited testing resources,it is often practical to only run a subset of the whole regression test set.In such situations,the execution sequence of test cases may become critical.In fact,a well-prioritized test case execution sequence may identify bugs more quickly,leading to earlier fault diagnosis,and debug.According to previous study,about 90% of the bugs can be triggered by the combination of the three parameters or less.Prioritization methods based on fixed-strength interaction coverage have been investigated widely,where the greedy search method is adopted to achieve rapid coverage for combination of parameters.When the combination strength is preset.the test case covering the largest number of uncovered combinations is selected at each step.With the increase of combination strength,the bug detection rate can increase.Based on the insight,this thesis analyzes the shortcomings of the above-mentioned method and carries out intensive research on how to achieve faster interaction combination coverage,and further applies it to SPL testing.1.As FICBP technique will reset the prioritization process after all the combinations are covered and break a tie randomly.a novel combinatorial testing method has been proposed based on coverage frequency(Prioritizing Interaction test suits using lexicographical frequency,FICBPL).Particularly,at each step,FICBPL selects the test case covering the largest number of combinations with the least coverage frequency,and adds it to the prioritized test suite.Besides based on the novel concept.The proposed technique does not face the situation of discarding the previous coverage information in the prioritization process.According to the empirical studies,FICBPL is able to largely reduces the time overhead compared with the high-dimensional combination of FICBP,with comparable detection rate performance.Moreover,our results also show that PICBP provides higher fault detection rates when the depth parameter is increased.2.As the greedy search algorithm cannot always find the optimal solution for combination coverage,an interaction test case prioritization method based on genetic algorithms(FICBPG)is proposed.FICBPG uses a meta-heuristic algorithm,where the rate of coverage combination is adopted as the fitness function.In particular,FICBPG performs selection,crossover,and mutation operation for the chromosomes,and returns the final the execution sequence of test cases as output.According to empirical results,FICBPG can improve the fault detection rate comparing with other techniques.Besides,FICBPG can achieve an affordable time cost when facing the combinatorial explosion problem.3.Due to the inherent drawbacks of manual testing,this thesis also designs and implements a prototype system for combinatorial testing to avoid duplication of labor and manual errors.In particular,the system integrates test case generation,test case prioritization and evaluation modules.
Keywords/Search Tags:Software testing, Combinatorial testing, Combinatorial space, Covering array, Test case prioritization
PDF Full Text Request
Related items