Enforcer - Efficient failure injection

Cyrille Artho, Armin Biere, Shinichi Honiden

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

6 Citations (Scopus)

Abstract

Non-determinism of the thread schedule is a well-known problem in concurrent programming. However, other sources of non-determinism exist which cannot be controlled by an application, such as network availability. Testing a program with its communication resources being unavailable is difficult, as it requires a change on the host system, which has to be coordinated with the test suite. Essentially, each interaction of the application with the environment can result in a failure. Only some of these failures can be tested. Our work identifies such potential failures and develops a strategy for testing all relevant outcomes of such actions. Our tool, Enforcer, combines the structure of unit tests, coverage information, and fault injection. By taking advantage of a unit test infrastructure, performance can be improved by orders of magnitude compared to previous approaches. Our tool has been tested on several real-world programs, where it found faults without requiring extra test code.

Original languageEnglish
Title of host publicationFM 2006
Subtitle of host publicationFormal Methods - 14th International Symposium on Formal Methods, Proceedings
PublisherSpringer-Verlag
Pages412-427
Number of pages16
ISBN (Print)3540372156, 9783540372158
Publication statusPublished - 2006 Jan 1
Externally publishedYes
EventFM 2006: 14th International Symposium on Formal Methods - Hamilton, Canada
Duration: 2006 Aug 212006 Aug 27

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume4085 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

OtherFM 2006: 14th International Symposium on Formal Methods
CountryCanada
CityHamilton
Period06/8/2106/8/27

    Fingerprint

ASJC Scopus subject areas

  • Computer Science(all)
  • Theoretical Computer Science

Cite this

Artho, C., Biere, A., & Honiden, S. (2006). Enforcer - Efficient failure injection. In FM 2006: Formal Methods - 14th International Symposium on Formal Methods, Proceedings (pp. 412-427). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 4085 LNCS). Springer-Verlag.