Extended program invariants: Applications in testing and fault localization

Mohammad Amin Alipour, Alex Groce

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

8 Scopus citations

Abstract

Invariants are powerful tools for program analysis and reasoning.Several tools and techniques have been developed to infer invariants of a program. Given a test suite for a program, an invariant detection tool (IDT) extracts (potential) invariants from the program execution on test cases of the test suite. The resultant invariants contain relations only over variables and constants that are visible to the IDT. IDTs are usually unable to extract invariants about execution features like taken branches, since programs usually do not have state variables for such features. Thus, the IDT has no information about such features in order to infer relations between them. We speculate that invariants about execution features are useful for understanding test suites; we call these invariants, extended invariants. In this paper, we discuss potential applications of extended invariants in understanding of test suites, and fault localization. We illustrate the usefulness of extended invariants with some small examples that use basic block count as the execution feature in extended invariants. We believe extended invariants provide useful information about execution of programs that can be utilized in program analysis and testing.

Original languageEnglish (US)
Title of host publication10th International Workshop on Dynamic Analysis, WODA 2012 - Proceedings
Pages7-11
Number of pages5
DOIs
StatePublished - 2012
Externally publishedYes
Event10th International Workshop on Dynamic Analysis, WODA 2012 - Minneapolis, MN, United States
Duration: Jul 15 2012Jul 15 2012

Publication series

Name10th International Workshop on Dynamic Analysis, WODA 2012 - Proceedings

Conference

Conference10th International Workshop on Dynamic Analysis, WODA 2012
Country/TerritoryUnited States
CityMinneapolis, MN
Period7/15/127/15/12

Keywords

  • fault localization
  • test case selection
  • Test coverage criteria

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Extended program invariants: Applications in testing and fault localization'. Together they form a unique fingerprint.

Cite this