Our team uses Avocado-VT to implement Virtualization system tests from Libvirt or QEMU level.
Avocado-VT is highly-configurable and as such we've seen many people struggling getting started with it despite the documentation.
The following slides provide a hands-on step-by-step setup, execution and development overview that might help get you started. It focuses on an audience for testing on mainframes but most parts are arch-independent. If there's anything missing or wrong, please let me know.