Patent attributes
Disclosed are various embodiments for automated testing of systems and applications. A first computing device may be in data communication with a second computing device. The first computing device can receive a fault instruction specifying receive a fault instruction specifying a fault to inject into a virtual compute instance, parameters for the fault, a duration of the fault, and an identifier of the virtual compute instance. The first computing device can then send a command to a second computing device that hosts the virtual compute instance, wherein the command specifies at least the fault, the parameters for the fault, and the virtual compute instance. In turn, the second computing device can receive the command from the first computing device, save a pre-fault state of the virtual compute instance, and then introduce the fault into the virtual compute instance.