Automated behavioral regression testing

Wei Jin, Alessandro Orso, Tao Xie

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

When a program is modified during software evolution, developers typically run the new version of the program against its existing test suite to validate that the changes made on the program did not introduce unintended side effects (i.e., regression faults). This kind of regression testing can be effective in identifying some regression faults, but it is limited by the quality of the existing test suite. Due to the cost of testing, developers build test suites by finding acceptable tradeoffs between cost and thoroughness of the tests. As a result, these test suites tend to exercise only a small subset of the program's functionality and may be inadequate for testing the changes in a program. To address this issue, we propose a novel approach called BEhavioral Regression Testing (BERT). Given two versions of a program, BERT identifies behavioral differences between the two versions through dynamical analysis, in three steps. First, it generates a large number of test inputs that focus on the changed parts of the code. Second, it runs the generated test inputs on the old and new versions of the code and identifies differences in the tests' behavior. Third, it analyzes the identified differences and presents them to the developers. By focusing on a subset of the code and leveraging differential behavior, BERT can provide developers with more (and more detailed) information than traditional regression testing approaches. To evaluate BERT, we implemented it as a plug-in for Eclipse, a popular Integrated Development Environment, and used the plug-in to perform a preliminary study on two programs. The results of our study are promising, in that BERT was able to identify true regression faults in the programs.

Original languageEnglish (US)
Title of host publicationICST 2010 - 3rd International Conference on Software Testing, Verification and Validation
Pages137-146
Number of pages10
DOIs
StatePublished - 2010
Externally publishedYes
Event3rd International Conference on Software Testing, Verification and Validation, ICST 2010 - Paris, France
Duration: Apr 7 2010Apr 9 2010

Publication series

NameICST 2010 - 3rd International Conference on Software Testing, Verification and Validation

Other

Other3rd International Conference on Software Testing, Verification and Validation, ICST 2010
Country/TerritoryFrance
CityParis
Period4/7/104/9/10

ASJC Scopus subject areas

  • Computer Science Applications
  • Software

Fingerprint

Dive into the research topics of 'Automated behavioral regression testing'. Together they form a unique fingerprint.

Cite this