This page describes a proposed automated testing infrastructure for KVM and potentially other full virtualization software (Xen HVM, QEMU).
Requirements
- Must easily support a large number of guest types
- BSDs, Windows, Linux varieties
- Must at least support a basic validation of boot
- Should support regression testing within the guest
- Must be capable of performing host validation while guest is running
- Should not require frequent updates of guest images
Ideas
A small daemon that is launched at startup in a guest. For Unix, it would be an init.d service. For Windows, it would be a startup program. It communicates with the host via PIO. A simple polling mechanism can proxy a socket. The program should download tests into the guest upon launch and run them feeding the output back to the host. The package should be easily installable in a guest (available via an ISO image) and adding guests should be a matter of putting a launch script within a directory. The data from the guest can be exposed via a CharDriver in QEMU such that a launching program can control all of the created guests.