Enforcer is an exception simulation and fault injection tool for Java. In a typical test suite, many possible exceptions (such as for input/output) are not covered. Each method call that may throw exceptions may have an effect on the program, but systematic testing of this is hard. Enforcer will run all JUnit-based unit tests, analyze exception coverage, and re-run an instrumented version of your program which automatically tests all exceptions. Step by step, Enforcer generates exceptions at different code locations. This forces execution to go through previously uncovered exceptions. By analyzing the unit test structure first, Enforcer is much more efficient than other fault injection tools.
KEDR is a framework to facilitate dynamic analysis of kernel modules in Linux ("KEDR" is an acronym for "KErnel-mode Drivers in Runtime"). KEDR allows you to intercept the calls that a kernel module makes to the functions exported by other modules and by the kernel proper. The tools provided by the framework can record the arguments and return values of these functions to a trace, perform fault simulation according to user-defined scenarios, and check the kernel modules for memory leaks and some other kinds of problems. Custom data collection and analysis tools for the Linux kernel can also be built on top of KEDR framework.
libfiu is a C library for fault injection. It provides functions to mark "points of failure" inside your code (the "core API"), and functions to enable/disable the failure of those points (the "control API"). The core API is used inside the code on which you want to perform failure injection. The control API is used inside the testing code in order to control the injection of failures.