arrow
返回

Semantics guided regression test cost reduction

delete1997-01-01
delete124
delete
OA
AI
D
David Binkley
DOI:10.1109/32.624306delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Software maintainers are faced with the task of regression testing: retesting a modified program on an often large number of test cases. The cost of regression testing can be reduced if the size of the program that must be retested is reduced and if old test cases and old test results can be reused. Two complimentary algorithms for reducing the cost of regression testing are presented. The first produces a program called differences that captures the semantic change between certified, a previously tested program, and modified, a changed version of certified. It is more efficient to test differences, because it omits unchanged computations. The program differences is computed using a combination of program slices. The second algorithm identifies test cases for which certified and modified will produce the same output and existing test cases that will test components new in modified. Not rerunning test cases that produce the same output avoids unproductive testing; testing new components with existing test cases avoids the costly construction of new test cases. The second algorithm is based on the notion of common execution patterns, which is the interprocedural extension of the notion introduced by Bates and Horwitz. Program components with common execution patterns have the same execution pattern during some call to their procedure. They 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). Together with differences, it is possible to test modi fled by running the smaller program differences on a smaller number of test cases. This is more efficient than running modified on a large number of test cases. A prototype implementation has been built to examine and illustrate these algorithms.
Keyword:
CTR categories and subject descriptors, D.2.2 [software engineering], tools and techniques-programmer workbench
D.2.5 [software enginering], testing and debugging
D.3.3 [programming languages], language constructs-control
structures, procedures, functions, and subroutines
E.1 [data structures] graphs
other keywords, slicing, regression testing

期刊

IEEE Transactions on Software Engineering 封面图
IEEE Transactions on Software Engineering
IF:
5.6
论文数:
2.9K
被引数:
1.1W

机构

暂无机构信息
引用论文

引用论文

High-definition trans cranial direct current stimulation and its effects on cognitive function: a systematic review
err2022-12-17
err0
PREAI
errJaya Shanker Tedla; Devika Rani Sangadala; Ravi Shankar Reddy; Kumar Gular; Snehil Dixit
err分享
err收藏
A theory for microtremor H/V spectral ratio: application for a layered medium微震颤H/V光谱比的理论: 在分层介质中的应用
err2011-05-26
err0
errOAAI
errFrancisco J. Sánchez-Sesma; Miguel Rodríguez; Ursula Iturrarán-Viveros; Francisco Luzón; Michel Campillo; Ludovic Margerin; Antonio García-Jerez; Martha Suarez; Miguel A. Santoyo; Alejandro Rodríguez-Castellanos
err分享
err收藏
A photoionization mass spectrometric investigation of CH3CN and CD3CN
err1981-02-01
err0
PREAI
errD. M. Rider; G. W. Ray; E. J. Darland; G. E. Leroi
err分享
err收藏
Lactate Dehydrogenase Variant from Human Blood: Evidence for Molecular Subunits
err1963-08-16
err0
PREAI
errSamuel H. Boyer; David C. Fainer; E. J. Watson-Williams
err分享
err收藏
The crystal structure of vicanite-(Ce), a borosilicate showing an unusual (Si3B3O18)15−polyanion
err2002-09-01
err0
PREAI
errPaolo Ballirano; Athos Callegari; Franca Caucia; Adriana Maras; Fiorenzo Mazzi; Luciano Ungaretti
err分享
err收藏
Mesangiocapillary Glomerulonephritis in Down’s Syndrome
err1991-01-01
err0
PREAI
errSuresh K. Gupta; Venkata S. Venkataseshan; Jacob Churg
err分享
err收藏
学者 查看更多内容