Speeding up Mutation Testing via Regression Test Selection: An Extensive Study

Lingchao Chen, Lingming Zhang

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

Abstract

Mutation testing is one of the most powerful methodologies to evaluate the quality of test suites, and has also been demonstrated to be effective for various other testing and debugging problems, e.g., test generation, fault localization, and program repair. However, despite various mutation testing optimization techniques, mutation testing is still notoriously time-consuming. Regression Testing Selection (RTS) has been widely used to speed up regression testing. Given a new program revision, RTS techniques only select and rerun the tests that may be affected by code changes, since the other tests should have the same results as the prior revision. To date, various practical RTS tools have been developed and used in practice. Intuitively, such RTS tools may be directly used to speed up mutation testing of evolving software systems, since we can simply recollect the mutation testing results of the affected tests while directly obtaining the mutation testing results for the other tests from the prior revision. However, to our knowledge, there is no such study. Therefore, in this paper, we perform the first extensive study (using 1513 revisions of 20 real-world GitHub Java projects, totalling 83.26 Million LoC) on the effectiveness and efficiency of various RTS techniques in speeding up mutation testing. Our study results demonstrate that both file-level static and dynamic RTS can achieve precise and efficient mutation testing, providing practical guidelines for developers.

Original languageEnglish (US)
Title of host publicationProceedings - 2018 IEEE 11th International Conference on Software Testing, Verification and Validation, ICST 2018
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages58-69
Number of pages12
ISBN (Electronic)9781538650127
DOIs
StatePublished - May 25 2018
Externally publishedYes
Event11th IEEE International Conference on Software Testing, Verification and Validation, ICST 2018 - Vasteras, Sweden
Duration: Apr 9 2018Apr 13 2018

Publication series

NameProceedings - 2018 IEEE 11th International Conference on Software Testing, Verification and Validation, ICST 2018

Other

Other11th IEEE International Conference on Software Testing, Verification and Validation, ICST 2018
Country/TerritorySweden
CityVasteras
Period4/9/184/13/18

Keywords

  • Dynamic Analysis
  • Mutation Testing
  • Regression Test Selection
  • Regression Testing
  • Static Analysis

ASJC Scopus subject areas

  • Software
  • Safety, Risk, Reliability and Quality

Fingerprint

Dive into the research topics of 'Speeding up Mutation Testing via Regression Test Selection: An Extensive Study'. Together they form a unique fingerprint.

Cite this