The application of program slicing to regression testing

Abstract Software maintainers are faced with the task of regression testing: retesting a program after a modification. The goal of regression testing is to ensure that bug fixes and new functionality do not adversely affect the correct functionality inherited from the original program. Regression testing often involves running a large program on a large number of test cases; thus, it can be expensive in terms of both human and machine time. Many approaches for reducing the cost of regression testing have been proposed. Those that make use of program slicing are surveyed.

[1]  Wuu Yang,et al.  The Semantics of Program Slicing , 1988 .

[2]  Gregg Rothermel,et al.  Analyzing Regression Test Selection Techniques , 1996, IEEE Trans. Software Eng..

[3]  Joseph Robert Horgan,et al.  Incremental regression testing , 1993, 1993 Conference on Software Maintenance.

[4]  Keith Brian Gallagher,et al.  Using Program Slicing in Software Maintenance , 1991, IEEE Trans. Software Eng..

[5]  Boris Beizer,et al.  Software Testing Techniques , 1983 .

[6]  Joseph Robert Horgan,et al.  Dynamic program slicing , 1990, PLDI '90.

[7]  David W. Binkley,et al.  Program integration for languages with procedure calls , 1995, TSEM.

[8]  Debra J. Richardson,et al.  TAOS: Testing with Analysis and Oracle Support , 1994, ISSTA '94.

[9]  Rajiv Gupta,et al.  An approach to regression testing using slicing , 1992, Proceedings Conference on Software Maintenance 1992.

[10]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1987, TOPL.

[11]  David Binkley Multi-procedure program integration , 1992 .

[12]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[13]  Eugene H. Spafford,et al.  Dynamic slicing in the presence of unconstrained pointers , 1991, TAV4.

[14]  Elaine J. Weyuker The Complexity of Data Flow Criteria for Test Data Selection , 1984, Inf. Process. Lett..

[15]  David W. Binkley,et al.  Semantics Guided Regression Test Cost Reduction , 1997, IEEE Trans. Software Eng..

[16]  Thomas W. Reps,et al.  Integrating noninterfering versions of programs , 1989, TOPL.

[17]  Susan Horwitz,et al.  Incremental program testing using program dependence graphs , 1993, POPL '93.

[18]  Gregg Rothermel,et al.  Selecting tests and identifying test coverage requirements for modified software , 1994, ISSTA '94.

[19]  Gregg Rothermel,et al.  A safe, efficient regression test selection technique , 1997, TSEM.

[20]  Thomas W. Reps,et al.  Integrating non-intering versions of programs , 1988, POPL '88.

[21]  David W. Binkley,et al.  Interprocedural slicing using dependence graphs , 1990, TOPL.

[22]  Lee J. White Software Testing and Verification , 1987, Adv. Comput..