libvirt.test: Fix hidden failure in test

If domain doesn't have a vnc graphic device, all the
normal tests will be fail. Now before execute vncdisplay
command, test will check if vnc graphic device exists,
if not, test will add a vnc graphic device to domain.

Signed-off-by: Li Yang <liyang.fnst@cn.fujitsu.com>
Looks so strange. You get a graphic device and this device has a method named ```add_graphic()```. And this method add a graphic device to a vm. This break Assignment-of-responsibility in OOD heavily. ```add_graphic()``` should not be one of responsibilities of a graphic device. I think currently we should do this work as below:
```
#init a graphic device
graphics = Graphics()
graphics.type=xxx
graphics.channel=xxx
...
# Add graphic device into vm.devices.
vmxml.add_device(graphics)
```

In any case, add a device into a vmxml should not be done by a device, right? Even we need a add_graphic() method, it should be in responsibility of vmxml, agree?

Not a comment for your patch here and I am not sure you want to address the question I mentioned above. But I think I have to point it out that this method we have already added here breaking our libvirt_xml module.