@yangdongsheng you can have a look at shared/cfg/guest-os/Windows.cfg there are lots of examples for test cases parameters need be update based on guest os type, such like some very basic ones: unattended_install. And subtest.cfg should be the default values for tests, not the user configuration. It is just a very basic set up for the test. And following cfgs as guest-os, guest-hw etc cfgs will handle the special request for parameters in test cases in different situation. So if you move the subtest.cfg like this all setup in guest-os.cfg now will not work. Not sure how much it will influence the libvirt tests. Although this change is only in libvirt part. Maybe we should keep the same definition for the cfg files among different backend as some cfg files are shaing with different backends? Just a advice, if you think it is OK to keep it works different in libvirt part. Please ignore me.