coming from a different area - oVirt Node - I also have the need to do automatic testing
I am not sure how much this topic has been eroded in the Cloud SIG, but at least I wanted
to give head's up to point you to this post  and this screencast .
Basically gherkin is used to specify the testcases (features/scenarios) - with all the
pros of it.
qemu - the workhorse spawns a VM.
And python-expect is responsible for interacting with the VM, doing what is requested and
monitoring the serial console.
Nice is that you save your battery, because it can be intergrated with Travis CI .