Abstract
In this chapter we present Verification-Aided Regression Testing, a novel extension of regression testing that is significantly less sensitive to the completeness of the validation test suite due to the use of model checking. We extend the use of test case executions from conventional direct fault discovery to generation of behavioral properties specific to the new version by (i) automatically producing properties that are proved to hold for the base version of a program, (ii) automatically identifying and checking on the upgraded program only the properties that, according to the developers’ intention, must be preserved by the upgrade, and (iii) reporting the faults and the corresponding counterexamples that are not revealed by the regression tests. Our empirical study on both open-source and industrial software systems show that Verification-Aided Regression Testing produces properties that can be extremely beneficial in increasing the effectiveness of regression testing by timely and automatically detecting faults unnoticed by existing test suites.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
When determining changes, VART compares the programs and automatically maps the properties localized in the base version of the software to the corresponding location in the upgraded program.
- 2.
The Grep test suite has been downloaded from the SIR repository: http://sir.unl.edu/.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Pastore, F. et al. (2015). Regression Checking of Changes in C Software. In: Chockler, H., Kroening, D., Mariani, L., Sharygina, N. (eds) Validation of Evolving Software. Springer, Cham. https://doi.org/10.1007/978-3-319-10623-6_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-10623-6_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-10622-9
Online ISBN: 978-3-319-10623-6
eBook Packages: Computer ScienceComputer Science (R0)