Mutant generation for embedded systems using kernel-based software and hardware fault simulation

Ahyoung Sung, Byoungju Choi, W. Eric Wong, Vidroha Debroy

Research output: Contribution to journalArticlepeer-review

4 Scopus citations

Abstract

Context: Mutation testing is a fault-injection-based technique to help testers generate test cases for detecting specific and predetermined types of faults. Objective: Before mutation testing can be effectively applied to embedded systems, traditional mutation testing needs to be modified. To inject a fault into an embedded system without causing any system failure or hardware damage is a challenging task as it requires some knowledge of the underlying layers such as the kernel and the corresponding hardware. Method: We propose a set of mutation operators for embedded systems using kernel-based software and hardware fault simulation. These operators are designed for software developers so that they can use the mutation technique to test the entire system after the software is integrated with the kernel and hardware devices. Results: A case study on a programmable logic controller for a digital reactor protection system in a nuclear power plant is conducted. Our results suggest that the proposed mutation operators are useful for fault-injection and this is evidenced by the fact that faults not injected by us were discovered in the subject software as a result of the case study. Conclusion: We conclude that our mutation operators are useful for integration testing of an embedded system.

Original languageEnglish
Pages (from-to)1153-1164
Number of pages12
JournalInformation and Software Technology
Volume53
Issue number10
DOIs
StatePublished - Oct 2011

Keywords

  • Embedded systems
  • Fault injection
  • Integration testing
  • Mutation operators

Fingerprint

Dive into the research topics of 'Mutant generation for embedded systems using kernel-based software and hardware fault simulation'. Together they form a unique fingerprint.

Cite this