Nature-Inspired Approaches to Test Suite Minimization for Regression Testing

Author(s):  
Anu Bajaj ◽  
Om Prakash Sangwan
Author(s):  
Sarika Sharma ◽  
Deepak Kumar

Objective: From the literature review, it is evident that the concept of “regression testing” inherited in agile software testing originates from software maintenance practices. Therefore, the existing algorithms for regression testing revolve around the software maintenance principles rather than agile methodology. The objective of this paper is to evaluate the degree of fitness of the existing regression test-suite development algorithms for performing the regression testing in agile. Methods: This paper performs a systematic literature review for research work published from 2006 to 2018, which includes survey of the existing regression testing algorithms to identify and overcome the challenges associated with them while performing regression testing in agile. This research paper considers the four research questions into scope for analyzing the fitness of existing regression test-suite development algorithm for performing regression testing under agile methodology. Further, this paper attempts to propose approach for the development of the regression test-suite suitable for regression testing under agile methodology. Results: The current regression test-suite development algorithm were found unsuitable for performing the regression testing under agile methodology due to the newly identified four key challenges associated with them. Conclusion: The current regression test-suite development algorithms aligned with software maintenance principles rather than agile methodology. In addition, the newly proposed approach for regression test-suite development found to be easily adaptable by agile teams as it aligns with agile methodology principles. Finally, this paper recommends the adoption of agile principle through the newly proposed approach for developing regression test-suite for performing regression testing under agile methodology.


2013 ◽  
Vol 10 (1) ◽  
pp. 73-102 ◽  
Author(s):  
Lijun Mei ◽  
Yan Cai ◽  
Changjiang Jia ◽  
Bo Jiang ◽  
W.K. Chan

Many web services not only communicate through XML-based messages, but also may dynamically modify their behaviors by applying different interpretations on XML messages through updating the associated XML Schemas or XML-based interface specifications. Such artifacts are usually complex, allowing XML-based messages conforming to these specifications structurally complex. Testing should cost-effectively cover all scenarios. Test case prioritization is a dimension of regression testing that assures a program from unintended modifications by reordering the test cases within a test suite. However, many existing test case prioritization techniques for regression testing treat test cases of different complexity generically. In this paper, the authors exploit the insights on the structural similarity of XML-based artifacts between test cases in both static and dynamic dimensions, and propose a family of test case prioritization techniques that selects pairs of test case without replacement in turn. To the best of their knowledge, it is the first test case prioritization proposal that selects test case pairs for prioritization. The authors validate their techniques by a suite of benchmarks. The empirical results show that when incorporating all dimensions, some members of our technique family can be more effective than conventional coverage-based techniques.


2013 ◽  
Vol 2013 ◽  
pp. 1-10 ◽  
Author(s):  
Nicolas Frechette ◽  
Linda Badri ◽  
Mourad Badri

This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of Control Call Graphs, which are a reduced form of traditional Control Flow Graphs. It uses static analysis of the source code of the program. The developed tool (1) identifies the Control Call Paths potentially impacted by changes, (2) selects, from an existing test suite, the appropriate test cases, and (3) generates new JUnit test cases for control call paths that are not covered by existing tests (new ones, or those whose structure has been modified after changes). In this way, the approach supports an incremental update of the test suite. The selected JUnit test cases, including the new ones, are automatically executed. Three concrete case studies are reported to provide evidence of the feasibility of the approach and its benefits in terms of reduction of regression testing effort.


2012 ◽  
Vol 263-266 ◽  
pp. 2168-2172
Author(s):  
Lu Lu Chen ◽  
Ling Zhang

Regression testing is an important activity to ensure the quality of software. In order to improve the efficiency of regression testing, in this paper, the author proposes to reorder test suite based on ant colony algorithm in regression testing, and compare the result with other common sort results. Through experiment, it shows that the method can get the optimal sequence of test cases under the time limit and it has been proven a superior method in both effectiveness and efficiency for test cases prioritization.


2007 ◽  
Vol 190 (2) ◽  
pp. 33-46 ◽  
Author(s):  
Gordon Fraser ◽  
Bernhard K. Aichernig ◽  
Franz Wotawa

Author(s):  
Machani SivaPrasad

Software systems is evolve continuously during development and maintenance. After software is modified regression testing is applied to software to ensure that It behaves intended and modifications not negatively impacts its original functionality .It is time consuming to rerun test suite T of program Pi on modified program Pi+1.So there are many regression testing techniques are there for doing regression testing. These are based on coverage data. So computing coverage data for Pi+1 without rerunning all test cases is the problem for doing regression testing of program Pi+1.This paper proposed a new approach that computes coverage data with selecting test cases T’ for the subsequent versions of the software .By computing coverage data for subsequent version of software on without rerunning entire test suit T we can improve overall time taken to retest the evolving software using Regression testing. This paper focus on improving the performance of regression testing for software evolve continuously during maintenance, by implementing a new approach for regression testing by computing coverage data for evolving software using dataflow analysis and execution tracing .


In the fast pacing technological era, the key to a successful software industry is quick delivery of high quality software to the clients. This high quality is achieved by performing software testing on the product. The high quality product ensures stakeholder’s satisfaction which in turn spreads good word about the software industry making it a success. In this paper, we will focus on the problems faced during regression testing and how the same can be handled. Regression testing is a critical activity done during the software maintenance phase of the software development cycle. However, it has countless underlying issues like effective test case generation and prioritization, etc which need to be dealt with. These issues demand effort, time and cost of the testing. Different techniques and methodologies have been proposed for taking care of these issues. Use of Ant Colony Optimization (ACO) for test suite minimization has been an area of interest for many researchers. This paper presents an implementation of ACO for test suite minimization, showcasing how arbitrary nature of ACO helps choose an optimal solution to the problem.


Sign in / Sign up

Export Citation Format

Share Document