Document Type

Post-Print

Publication Date

7-12-2015

Subjects

Computer programs--Testing, Debugging in computer science

Abstract

Robustness testing is a crucial stage in the device driver development cycle. To accelerate driver robustness testing, effective fault scenarios need to be generated and injected without requiring much time and human effort. In this pa- per, we present a practical approach to automatic runtime generation and injection of fault scenarios for driver robust- ness testing. We identify target functions that can fail from runtime execution traces, generate effective fault scenarios on these target functions using a bounded trace-based it- erative strategy, and inject the generated fault scenarios at runtime to test driver robustness using a permutation-based injection mechanism. We have evaluated our approach on 12 Linux device drivers and found 28 severe bugs. All these bugs have been further validated via manual fault injection. The results demonstrate that our approach is useful and efficient in generating fault scenarios for driver robustness testing with little manual effort.

Description

This is the author’s version of a work that was accepted for publication in the Proceedings of the International Symposium on Software Testing and Analysis (ISSTA '15).

A definitive version was subsequently published online at: http://dx.doi.org/10.1145/2771783.2771811

DOI

10.1145/2771783.2771811

Persistent Identifier

http://archives.pdx.edu/ds/psu/16863

Share

COinS