An Evolutionary Regression Test Case Prioritization based on Dependence Graph and Genetic Algorithm for Object-Oriented Programs

Test case prioritization (TCP) is a software testing technique that finds an ideal ordering of test cases for regression testing, so that testers can obtain the maximum benefit of their test suite, even if the testing process is stop at some arbitrary point. The recent trend of software development uses OO paradigm. This paper proposed a cost-cognizant TCP approach for object-oriented software that uses path-based integration testing. Path-based integration testing will identify the possible execution path and extract these paths from the Java System Dependence Graph (JSDG) model of the source code using forward slicing technique. Afterward evolutionary algorithm (EA) was employed to prioritize test cases based on the severity detection per unit cost for each of the dependent faults. The proposed technique was known as Evolutionary Cost-Cognizant Regression Test Case Prioritization (ECRTP) and being implemented as regression testing approach for experiment.


2016 ◽  
Vol 2016 ◽  
pp. 1-20 ◽  
Author(s):  
S. Panda ◽  
D. Munjal ◽  
D. P. Mohapatra

Test case prioritization focuses on finding a suitable order of execution of the test cases in a test suite to meet some performance goals like detecting faults early. It is likely that some test cases execute the program parts that are more prone to errors and will detect more errors if executed early during the testing process. Finding an optimal order of execution for the selected regression test cases saves time and cost of retesting. This paper presents a static approach to prioritizing the test cases by computing the affected component coupling (ACC) of the affected parts of object-oriented programs. We construct a graph named affected slice graph (ASG) to represent these affected program parts. We determine the fault-proneness of the nodes of ASG by computing their respective ACC values. We assign higher priority to those test cases that cover the nodes with higher ACC values. Our analysis with mutation faults shows that the test cases executing the fault-prone program parts have a higher chance to reveal faults earlier than other test cases in the test suite. The result obtained from seven case studies justifies that our approach is feasible and gives acceptable performance in comparison to some existing techniques.


In this paper our aim is to propose a Test Case Selection and Prioritization technique for OOP for ordering the test cases as per in accordance with their priority for finding the faults in the OOS. We have used the heuristic Genetic Algorithm, in order to generating the order of these prioritized test cases for a given OOS. The motive is to put a test case first into the ordered sequence that may have the highest prospective of finding an error in the given OOS & then soon..


2014 ◽  
Vol 16 (3) ◽  
pp. 38-47 ◽  
Author(s):  
Samaila Musa ◽  
◽  
Abu Bakar M. d. Sultan ◽  
Abdul Azim Abd Ghani ◽  
Salmi Baharom

Sign in / Sign up

Export Citation Format

Share Document