Kaitlin,
I applied the patch on my own repository. Here is the test result:
=================================================
KVM on Pegasus Test Run Summary for Aug 12 2008
=================================================
Distro: Fedora release 8.93 (Rawhide)
Kernel: 2.6.26-rc2-mm1-netns
libvirt: 0.4.4
Hypervisor: QEMU 0.9.1
CIMOM: Pegasus 2.7.0
Libvirt-cim revision: 661
Libvirt-cim changeset: 98bc98880149
=================================================
FAIL: 0
XFAIL: 1
SKIP: 1
PASS: 1
-----------------
Total: 3
=================================================
XFAIL Test Summary:
ComputerSystem - 01_enum.py: PASSComputerSystem - 02_nosystems.py:
SKIPComputerSystem - 03_defineVS.py: PASSComputerSystem -
04_defineStartVS.py: PASSComputerSystem - 05_activate_defined_start.py:
PASSComputerSystem - 06_paused_active_suspend.py: PASSComputerSystem -
22_define_suspend.py: PASSComputerSystem - 23_suspend_suspend.py:
PASSComputerSystem - 27_define_suspend_errs.py: PASSComputerSystem -
32_start_reboot.py: XFAILComputerSystem - 33_suspend_reboot.py:
XFAILComputerSystem - 35_start_reset.py: PASSComputerSystem -
40_RSC_start.py: PASSComputerSystem - 41_cs_to_settingdefinestate.py:
SKIPComputerSystem - 42_cs_gi_errs.py: PASS
=================================================
SKIP Test Summary:
ComputerSystem - 01_enum.py: PASSComputerSystem - 02_nosystems.py:
SKIPComputerSystem - 03_defineVS.py: PASSComputerSystem -
04_defineStartVS.py: PASSComputerSystem - 05_activate_defined_start.py:
PASSComputerSystem - 06_paused_active_suspend.py: PASSComputerSystem -
22_define_suspend.py: PASSComputerSystem - 23_suspend_suspend.py:
PASSComputerSystem - 27_define_suspend_errs.py: PASSComputerSystem -
32_start_reboot.py: XFAILComputerSystem - 33_suspend_reboot.py:
XFAILComputerSystem - 35_start_reset.py: PASSComputerSystem -
40_RSC_start.py: PASSComputerSystem - 41_cs_to_settingdefinestate.py:
SKIPComputerSystem - 42_cs_gi_errs.py: PASS
=================================================
Full report:
ComputerSystem - 01_enum.py: PASSComputerSystem - 02_nosystems.py:
SKIPComputerSystem - 03_defineVS.py: PASSComputerSystem -
04_defineStartVS.py: PASSComputerSystem - 05_activate_defined_start.py:
PASSComputerSystem - 06_paused_active_suspend.py: PASSComputerSystem -
22_define_suspend.py: PASSComputerSystem - 23_suspend_suspend.py:
PASSComputerSystem - 27_define_suspend_errs.py: PASSComputerSystem -
32_start_reboot.py: XFAILComputerSystem - 33_suspend_reboot.py:
XFAILComputerSystem - 35_start_reset.py: PASSComputerSystem -
40_RSC_start.py: PASSComputerSystem - 41_cs_to_settingdefinestate.py:
SKIPComputerSystem - 42_cs_gi_errs.py: PASS
1) Would you please to fix the whitespace for XFAIL and Total summary?
2) The count numbers are not correct, actually there are total 15 tests, 2
skip, 2 XFAIL and 11 pass for me.
3) I think it's better to change to a newline for each test case in the
Test Summary and Full report.
4) The test summary isn't correct in XFAIL/SKIP status.
Thanks!
Best,
Regards
Daisy (运国莲)
VSM Team, China Systems & Technology Labs (CSTL)
E-mail: yunguol(a)cn.ibm.com
TEL: (86)-21-60922403
Building 10, 399 Ke Yuan Rd, Pudong Shanghai, 201203
libvirt-cim-bounces(a)redhat.com wrote on 2008-08-12 00:21:16:
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1218470745 25200
# Node ID d1e8325893b3e68e12b1725e350314aeaf6d2be1
# Parent a5111986921da879e2dcc57a1529c7f4d902aebf
[TEST] #2 Add test report generation.
Using the --report option, you can generate a report and have it
mailed to the address supplied.
How to call using the report option:
./runtests libvirt-cim -i localhost -c -d -v LXC -g
VirtualSystemManagementService -t 01_definesystem_name.py --report
<my_to_addr(a)test.com>
The user will need to create a .cimtestrc file in their home
directory in the following format:
[email]
relay =
my.mail.relay.com
from = Joe User <joe(a)test.com>
Will need to add revision number support to cimtest and then add the
cimtest revision number to the report.
Updates:
-Refactored reporting related pieces into their own library file
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r a5111986921d -r d1e8325893b3 suites/libvirt-cim/main.py
--- a/suites/libvirt-cim/main.py Mon Aug 11 09:05:37 2008 -0700
+++ b/suites/libvirt-cim/main.py Mon Aug 11 09:05:45 2008 -0700
@@ -29,12 +29,13 @@
sys.path.append('../../lib')
import TestSuite
import commands
-from VirtLib import utils
from VirtLib import groups
from CimTest.ReturnCodes import PASS, SKIP, XFAIL
from CimTest.Globals import platform_sup
sys.path.append('./lib')
from XenKvmLib.classes import get_typed_class
+import ConfigParser
+from XenKvmLib.reporting import gen_report, send_report
parser = OptionParser()
parser.add_option("-i", "--ip", dest="ip",
default="localhost",
@@ -54,8 +55,11 @@
help="Virt type, select from 'Xen' & 'KVM'
&
'XenFV' & 'LXC'(default: Xen). ")
parser.add_option("-d", "--debug-output",
action="store_true",
dest="debug",
help="Duplicate the output to stderr")
+parser.add_option("--report", dest="report",
+ help="Send report using mail info: --
report=<recipient addr>")
TEST_SUITE = 'cimtest'
+CIMTEST_RCFILE = '%s/.cimtestrc' % os.environ['HOME']
def set_python_path():
previous_pypath = os.environ.get('PYTHONPATH')
@@ -82,6 +86,28 @@
print "Cleaned log files."
+def get_rcfile_vals():
+ if not os.access(CIMTEST_RCFILE, os.R_OK):
+ print "\nCould not access the %s file for this user." %
CIMTEST_RCFILE
+ print "Create this file and add the appropriate relay:"
+ print "\tfrom = me(a)isp.com\n\trelay = my.relay\n"
+ return None, None
+
+ try:
+ conf = ConfigParser.ConfigParser()
+ if not conf.read(CIMTEST_RCFILE):
+ return None, None
+
+ addr = conf.get("email", "from")
+ relay = conf.get("email", "relay")
+
+ except Exception, details:
+ print "\n%s" % details
+ print "\nPlease verify the format of the %s file\n" %
CIMTEST_RCFILE
+ return None, None
+
+ return addr, relay
+
def get_version(virt, ip):
conn = WBEMConnection('http://%s' % ip,
(os.getenv('CIM_USER'),
os.getenv('CIM_PASS')),
@@ -101,7 +127,10 @@
def main():
(options, args) = parser.parse_args()
-
+ to_addr = None
+ from_addr = None
+ relay = None
+ div =
"--------------------------------------------------------------------"
if options.test and not options.group:
parser.print_help()
@@ -114,7 +143,15 @@
os.environ['CIMOM_PORT'] = str(options.port)
#
- testsuite = TestSuite.TestSuite()
+ if options.report:
+ from_addr, relay = get_rcfile_vals()
+
+ if from_addr == None or relay == None:
+ return 1
+
+ to_addr = options.report
+
+ testsuite = TestSuite.TestSuite(log=True)
set_python_path()
@@ -139,9 +176,10 @@
revision, changeset = get_version(options.virt, options.ip)
- print "Testing " + options.virt + " hypervisor"
+ print "\nTesting " + options.virt + " hypervisor"
- for test in test_list:
+ for test in test_list:
+ testsuite.debug(div)
t_path = os.path.join(TEST_SUITE, test['group'])
os.environ['CIM_TC'] = test['test']
cdto = 'cd %s' % t_path
@@ -155,7 +193,16 @@
testsuite.print_results(test['group'], test['test'],
os_status)
+ testsuite.debug("%s\n" % div)
testsuite.finish()
+
+ msg_body, heading = gen_report(revision, changeset, options.virt,
+ options.ip, testsuite.log_file)
+
+ if options.report:
+ print "Sending mail from %s to %s using %s relay.\n" % \
+ (from_addr, to_addr, relay)
+ send_report(to_addr, from_addr, relay, msg_body, heading)
if __name__ == '__main__':
sys.exit(main())
_______________________________________________
Libvirt-cim mailing list
Libvirt-cim(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvirt-cim