Regression Testing Research Paper

2466 Words10 Pages

Software testing is one of the important phases in the development of software systems. It evaluates the capability of the software program for achieving its desired results. After modifications have been made, a piece of software can be run in a controlled environment and its behavior observed. This provides evidence which informs the decision to move to the next phase of the project or to attempt to rectify the problem.
The purpose of testing is to reduce risk. The unknown factors within the development and design of new software can derail a project and minor risks can delay it. By using a cycle of testing and resolution the level of risk can be identified which ultimately reduce uncertainty and eliminate errors.
…show more content…
Older versions will be changed to new ones. New features can be incorporated or software could be adapted to new conditions. Sometimes fixing of bugs introduces changes to the software. Regression testing is a type of software testing that intends to ensure that changes to the software have not adversely affected it and have not introduced errors.
Rerunning existing test cases for regression testing is a potentially costly and time consuming task. Therefore a selected subset of test cases which can reveal faults more effectively can be found out and executed.
1.1 Test Case Selection
The project is based on a regression test case selection strategy which selects a predetermined number of test cases from an existing test suite. The selected test cases are prioritized using a test case prioritization strategy for performing tests on time constrained conditions.

1.2 Test Case
…show more content…
While different criteria may have different weights, he recommends using Pareto optimization when weights will not work.
Mirarab et al.[2][13] used multi-criteria optimization technique for test case selection strategy. The two criteria for selection are code coverage and sum coverage of the program. Code coverage assumes that there exist test cases that effectively cover the changed area of code of the software. Sum coverage is a new approach, i.e. maximizing the minimum sum of coverage across all software elements. The selected test cases are prioritized using a prioritization technique. The technique is a greedy algorithm to maximize the minimum sum of coverage across all software elements.
Another technique for regression test selection is Selective regression testing (SRT) [5]. It determines which test executions are potentially affected by a given modification to the system. SRT comprise three general steps. First, test execution traces are recorded that show which test cases exercise which code fragments. Second, dependencies between code fragments are extracted. Third, all test cases that exercise modified code fragments, or code fragments that depend on modified code fragments, are marked as affected test

More about Regression Testing Research Paper

Open Document