Title :
Reducing the cost of regression testing by semantics guided test case selection
Author_Institution :
Dept. of Comput. Sci., Loyola Coll., Baltimore, MD, USA
Abstract :
Software maintainers are faced with the task of regression testing: retesting a modified program on a (large) number of test cases. The cost of regression testing can be reduced if old test cases and old test results can be reused. Reuse avoids the costly construction of new test cases and the unproductive rerunning of existing test cases when it can be guaranteed that the modified and original programs will produce the same results. An algorithm that uses language semantics to provide such a guarantee is presented. This algorithm uses semantic (not syntactic) differences and similarities between the old and new programs. The algorithm is based on the notion of common execution patterns, which is the interprocedural extension of equivalent execution patterns. Program components with common execution patterns are computed using a new type of interprocedural slice called a calling context slice. Whereas an interprocedural slice includes the program components necessary to capture all possible executions of a statement, a calling context slice includes only those program components necessary to capture the execution of a statement in a particular calling context (i.e., a particular call to the procedure)
Keywords :
program testing; software cost estimation; software maintenance; calling context slice; common execution patterns; cost; interprocedural slice; language semantics; program testing; regression testing; semantic differences; semantics guided test case selection; software maintenance; Chromium; Computer aided software engineering; Computer languages; Computer science; Costs; Debugging; Educational institutions; Software engineering; Software maintenance; Software testing;
Conference_Titel :
Software Maintenance, 1995. Proceedings., International Conference on
Conference_Location :
Opio
Print_ISBN :
0-8186-7677-9
DOI :
10.1109/ICSM.1995.526547