In some cases, we need to check if the testing environment is satisfied to run a certain testcase. The testcase only will be executed If some specific hardware is present on box. The patches add a optional check function support. For example: a testcase named testa.py with testa_check() defined in this file. The framework will run test_check(params) first, return 0 means pass, 1 means failure. If the check function failed. the testa(params) will not be run. "Skip" is marked in output. # testa.py required_params = () optional_params = ('options') def testa_check(params): logger = params['logger'] logger.info("I am from testa_check") return 1 def testa(params): logger = params['logger'] logger.info("I am from testa") return 1 The Output: Checking Testing Environment... Linux localhost.localdomain 3.2.5-3.fc16.x86_64 #1 SMP Thu Feb 9 01:24:38 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux Virsh command line tool of libvirt: 0.9.10 libvirtd (libvirt) 0.9.10 Default URI: qemu:///system QEMU emulator version 0.15.0 (qemu-kvm-0.15.0), Copyright (c) 2003-2008 Fabrice Bellard Start Testing: Case Count: 1 Log File: log/20120416142755/libvirt_test001 test:testa 14:27:56|INFO |I am from testa_check 14:27:56|INFO |Failed to meet testing requirement Result: Skip Summary: Total:1 [Pass:0 Fail:0 Skip:1] The testcase.conf file: test:testa options value1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list