Regression testing is a process that is applied after a program is modified. It tests the modified program to build confidence that the changed program will perform as per the specification (possibly modified). Regression forms an integral part of the testing strategy during the maintenance phase, where the software system may be corrected, adapted to the new environment, or enhanced to improve its performance. As the regression suites grow with each new-found defect, test automation is frequently involved which often poses a challenge due to time constraints.
In this paper, we have proposed a novel approach for prioritization of the test cases using the historical failure patterns for the correction regression cycle testing. The results indicate that there is a significant improvement in the fault detection capability at the start of the regression testing itself. The training data used by our model is mostly maintained by the organization through various sets of test management tools. Our technique relied on the past execution cycles and has no dependency on the requirements, feature risks, code coverage analysis, thereby reducing the efforts for a software company to invest time in the collection & preparation of the data for the training.