摘要 |
Systems and methods for testing the fault tolerance of a computer application or other software module include persistent storage of inputs and failure groups for the software under test. A test module may systematically fail system calls made by the software module at runtime. The test module may then detect an operational failure in the software module, indicating that a bug exists in the error-handling code of the software module. The test module may restart the software module and continue testing until error conditions are met. In embodiments, a test module may store and look up information about the conditions of the software module at the time the system call was made. This may ensure that the same system call is not failed twice under the same conditions. In other implementations, this information may be organized into groups, such that only one group of conditions needs to be examined in conjunction with a particular operational failure.
|