An information retrieval approach for regression test prioritization based on program changes

Ripon K. Saha, Lingming Zhang, Sarfraz Khurshid, Dewayne E. Perry

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

Abstract

Regression testing is widely used in practice for validating program changes. However, running large regression suites can be costly. Researchers have developed several techniques for prioritizing tests such that the higher-priority tests have a higher likelihood of finding bugs. A vast majority of these techniques are based on dynamic analysis, which can be precise but can also have significant overhead (e.g., for program instrumentation and test-coverage collection). We introduce a new approach, REPiR, to address the problem of regression test prioritization by reducing it to a standard Information Retrieval problem such that the differences between two program versions form the query and the tests constitute the document collection. REPiR does not require any dynamic profiling or static program analysis. As an enabling technology we leverage the open-source IR toolkit Indri. An empirical evaluation using eight open-source Java projects shows that REPiR is computationally efficient and performs better than existing (dynamic or static) techniques for the majority of subject systems.

Original languageEnglish (US)
Title of host publicationProceedings - 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, ICSE 2015
PublisherIEEE Computer Society
Pages268-279
Number of pages12
ISBN (Electronic)9781479919345
DOIs
StatePublished - Aug 12 2015
Externally publishedYes
Event37th IEEE/ACM International Conference on Software Engineering, ICSE 2015 - Florence, Italy
Duration: May 16 2015May 24 2015

Publication series

NameProceedings - International Conference on Software Engineering
Volume1
ISSN (Print)0270-5257

Other

Other37th IEEE/ACM International Conference on Software Engineering, ICSE 2015
Country/TerritoryItaly
CityFlorence
Period5/16/155/24/15

Keywords

  • Information retrieval
  • Regression testing
  • Test prioritization

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'An information retrieval approach for regression test prioritization based on program changes'. Together they form a unique fingerprint.

Cite this