ACM Home Page
Please provide us with feedback. Feedback
A safe, efficient regression test selection technique
Full text PdfPdf (731 KB)
Source ACM Transactions on Software Engineering and Methodology (TOSEM) archive
Volume 6 ,  Issue 2  (April 1997) table of contents
Pages: 173 - 210  
Year of Publication: 1997
ISSN:1049-331X
Authors
Gregg Rothermel  Oregon State Univ., Corvallis
Mary Jean Harrold  Ohio State Univ., Columbus
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 27,   Downloads (12 Months): 322,   Citation Count: 68
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/248233.248262
What is a DOI?

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

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
3
4
 
5
 
6
BENEDUSI, P., CIMITILE, A., AND DE CARLINI, U. 1988. Post-maintenance testing based on path change analysis. In Proceedings of the Conference on Software Maintenance--1988. IEEE, New York, 352-361.
 
7
BINKLEY, D. 1992. Using semantic differencing to reduce the cost of regression testing. In Proceedings of the Conference on Software Maintenance--1992. IEEE, New York, 41-50.
 
8
 
9
BOEHM, B.W. 1976. Software engineering. IEEE Trans. Comput. C-25, 12 (Dec.), 1226- 1241.
 
10
BROWN, P.A. AND HOFFMAN, D. 1990. The application of module regression testing at TRIUMF. Nucl. Instr. Meth. Phys. Res. A293, 1-2 (Aug.), 377-381.
 
11
 
12
DOGSA, T. AND ROZMAN, I. 1988. CAMOTE--Computer aided module testing and design environment. In Proceedings of the Conference on Software Maintenance--1988. IEEE, New York, 404-408.
 
13
FISCHER, K.F. 1977. A test case selection method for the validation of software maintenance modifications. In Proceedings of COMPSAC '77. IEEE, New York, 421-426.
 
14
FISCHER, K.F., RAJI, F., AND CHRUSCICKI, A. 1981. A methodology for retesting modified software. In Proceedings of the National Telecommunications Conference B-6-3. IEEE, New York, 1-6.
 
15
GUPTA, R., HARROLD, M. g., AND SOFFA, M.L. 1992. An approach to regression testing using slicing. In Proceedings of the Conference on Software Maintenance--1992. IEEE, New York, 299 -308.
 
16
HARROLD, M.g. AND SOFFA, M.L. 1988. An incremental approach to unit testing during maintenance. In Proceedings of the Conference on Software Maintenance--1988. IEEE, New York, 362-367.
 
17
HARROLD, M. g. AND SOFFA, M.L. 1989a. An incremental data flow testing tool. In Proceedings of the 6th International Conference on Testing Computer Software. Frontier Technologies, Annapolis, Md.
18
19
20
 
21
HARTMANN, J. AND ROBSON, D.J. 1989. Revalidation during the software maintenance phase. In Proceedings of the Conference on Software Maintenance--1989. IEEE, New York, 70-79.
 
22
HARTMANN, J. AND ROBSON, D.J. 1990a. RETEST--Development of a selective revalidation prototype environment for use in software maintenance. In Proceedings of the 23rd Hawaii International Conference on System Sciences. IEEE, New York, 92-101.
 
23
 
24
HOFFMAN, D. 1989. A CASE study in module testing. In Proceedings of the Conference on Software Maintenance--1989. IEEE, New York, 100-105.
25
 
26
 
27
LASKI, J. AND SZERMER, W. 1992. Identification of program modifications and its applications in software maintenance. In Proceedings of the Conference on Software Maintenance-- 1992. IEEE, New York, 282-290.
 
28
 
29
LEUNG, H. K. N. AND WHITE, L. 1989. Insights into regression testing. In Proceedings of the Conference on Software Maintenance--1989. IEEE, New York, 60-69.
 
30
 
31
LEUNG, H. K. N. AND WHITE, L.g. 1990b. A study of integration testing and software regression at the integration level. In Proceedings of the Conference on Software Maintenance--1990. IEEE, New York, 290-300.
 
32
LEUNG, H. K. N. AND WHITE, L.g. 1991. A cost model to compare regression test strategies. In Proceedings of the Conference on Software Maintenance--1991. IEEE, New York, 201- 208.
 
33
 
34
35
 
36
MARTINIG, F. 1996. Software testing: Poor consideration. Testing Tech. Newslett. (Oct.).
 
37
38
 
39
OSTRAND, T. J. AND WEYUKER, E.J. 1988. Using dataflow analysis for regression testing. In the 6th Annual Pacific Northwest Software Quality Conference. Lawrence and Craig, Portland, Oreg., 233-247.
 
40
41
 
42
ROTHERMEL, G. 1996. Efficient, effective regression testing using safe test selection techniques. Tech. Rep. 96-101, Clemson Univ., Clemson, S. Carol.
 
43
 
44
45
 
46
 
47
 
48
 
49
SHERLUND, B. AND KOREL, B. 1991. Modification oriented software testing. In Conference Proceedings: Quality Week 1991. Software Research Inc., San Francisco, Calif., 1-17.
 
50
SHERLUND, B. AND KOREL, B. 1995. Logical modification oriented software testing. In Proceedings: 12th International Conference on Testing Computer Software. Frontier Technologies, Annapolis, Md.
 
51
TAHA, A. B., THEBAUT, S. M., AND LIU, S.S. 1989. An approach to software fault localization and revalidation based on incremental data flow analysis. In Proceedings of the 13th Annual International Computer Software and Applications Conference. IEEE, New York, 527-534.
 
52
 
53
WHITE, L. J. AND LEUNG, H. K.N. 1992. A firewall concept for both control-flow and dataflow in regression integration testing. In Proceedings of the Conference on Software Maintenance--1992. IEEE, New York, 262-270.
 
54
55
 
56
YAU, S. S. AND KISHIMOTO, Z. 1987. A method for revalidating modified programs in the maintenance phase. In COMPSAC '87: The 11th Annual International Computer Software and Applications Conference. IEEE, New York, 272-277.
 
57
ZIEGLER, J., GRASSO, J. M., AND BURGERMEISTER, L.G. 1989. An Ada based real-time closedloop integration and regression test tool. In Proceedings of the Conference on Software Maintenance--1989. IEEE, New York, 81-90.

CITED BY  68


REVIEW

"Andrew Donald Booth : Reviewer"

In the context of this paper, regression means the evaluation of any effects generated in unmodified parts of a program by modifications in other parts. This is particularly important when complex and bloated software is upgraded.   more...

Collaborative Colleagues:
Gregg Rothermel: colleagues
Mary Jean Harrold: colleagues