Tool support for change-based regression testing: An industry experience report

Autoren Rudolf Ramler
Christian Salomon
Georg Buchgeher
Michael Lusser
Editoren D. Winkler
S. Biffl
J. Bergsmann
Titel Tool support for change-based regression testing: An industry experience report
Buchtitel Software Quality. Complexity and Challenges of Software Engineering in Emerging Technologies - Proc. SWQD 2017
Typ in Konferenzband
Serie Lecture Notes in Business Information Processing
Band 269
Note Industrial Experience Best Paper
ISBN 978-3-319-49420-3
DOI 10.1007/978-3-319-49421-0_10
Monat January
Jahr 2017
Seiten 133-152
SCCH ID# 16071

Changes may cause unexpected side effects and inconsistencies. Regression testing is the process of re-testing a software system after changes have been made to ensure that the new version of the system has retained the capabilities of the old version and that no new defects have been introduced. Regression testing is an essential activity, but it is also time-consuming and costly. Thus, regression testing should concentrate on those parts of the system that have been modified or which are affected by changes. Regression test selection has been proposed over three decades ago and, since then, it has been frequently in the focus of empirical studies. However, regression test selection is still not widely adopted in practice. Together with the test team of an industrial software company we have developed a tool-based approach that assists software testers in selecting regression test cases based on change information and test coverage data. This paper describes the main usage scenario of the approach, illustrates the implemented solution, and reports on its evaluation in a large industry project. The evaluation showed that the tool support reduces the time required for compiling regression test suites and fosters an accurate selection of regression test cases. The paper concludes with our lessons learned from implementing the tool support in a real-world setting.