Concepedia

TLDR

Regression testing is costly yet essential for ensuring that software changes are correct and do not introduce faults, and test‑selection techniques choose a subset of existing tests deemed necessary to validate modified software. The authors propose a new regression test selection technique. The technique constructs control‑flow graphs of the original and modified code, uses them to select tests that exercise changed paths, handles all language constructs and modification types, and has been implemented with preliminary studies showing significant cost reductions. The authors prove that, when conditions hold, their selected test set is safe and includes all fault‑exposing tests from the original suite, is at least as precise as other safe algorithms, and empirical results demonstrate substantial cost savings.

Abstract

Regression testing is an expensive but necessary maintenance activity performed on modified software to provide confidence that changes are correct and do not adversely affect other portions of the softwore. A regression test selection technique choses, from an existing test set, thests that are deemed necessary to validate modified software. We present a new technique for regression test selection. Our algorithms construct control flow graphs for a precedure or program and its modified version and use these graphs to select tests that execute changed code from the original test suite. We prove that, under certain conditions, the set of tests our technique selects includes every test from the original test suite that con expose faults in the modified procedfdure or program. Under these conditions our algorithms are safe . Moreover, although our algorithms may select some tests that cannot expose faults, they are at lease as precise as other safe regression test selection algorithms. Unlike many other regression test selection algorithms, our algorithms handle all language constructs and all types of program modifications. We have implemented our algorithms; initial empirical studies indicate that our technique can significantly reduce the cost of regression testing modified software.

References

YearCitations

Page 1