On 02/23/2012 11:08 PM, Daniel P. Berrange wrote:
On Wed, Feb 22, 2012 at 06:45:58PM -0200, Lucas Meneghel Rodrigues wrote:
* Instead of making all tests output to the same DEBUG log, make
them output to separate .tap files on the results directory

      
So, the current output of the tests is like this:

$ sudo client/bin/autotest run libvirt_tck
18:29:27 INFO | Writing results to
/home/lmr/Code/autotest.lmr/client/results/default
18:29:27 INFO | START	----	----	timestamp=1329942567	localtime=Feb
22 18:29:27	
18:29:27 INFO | 	START	libvirt_tck.domain	libvirt_tck.domain
timestamp=1329942567	localtime=Feb 22 18:29:27	
18:30:19 ERROR| child process failed
18:30:19 INFO | 		FAIL	libvirt_tck.domain	libvirt_tck.domain
timestamp=1329942619	localtime=Feb 22 18:30:19	FAIL:
['120-disks-stats.t', '205-disk-hotplug-ordering.t']
18:30:19 INFO | 	END FAIL	libvirt_tck.domain	libvirt_tck.domain
timestamp=1329942619	localtime=Feb 22 18:30:19	
18:30:19 INFO | 	START	libvirt_tck.hooks	libvirt_tck.hooks
timestamp=1329942619	localtime=Feb 22 18:30:19	
18:30:19 ERROR| child process failed
18:30:19 INFO | 		FAIL	libvirt_tck.hooks	libvirt_tck.hooks
timestamp=1329942619	localtime=Feb 22 18:30:19	FAIL:
['051-daemon-hook.t', '052-domain-hook.t']
18:30:19 INFO | 	END FAIL	libvirt_tck.hooks	libvirt_tck.hooks
timestamp=1329942619	localtime=Feb 22 18:30:19	
18:30:19 INFO | 	START	libvirt_tck.networks	libvirt_tck.networks
timestamp=1329942619	localtime=Feb 22 18:30:19	
18:30:28 INFO | 		GOOD	libvirt_tck.networks	libvirt_tck.networks
timestamp=1329942628	localtime=Feb 22 18:30:28	completed
successfully
18:30:28 INFO | 	END GOOD	libvirt_tck.networks	libvirt_tck.networks
timestamp=1329942628	localtime=Feb 22 18:30:28	
18:30:28 INFO | 	START	libvirt_tck.nwfilter	libvirt_tck.nwfilter
timestamp=1329942628	localtime=Feb 22 18:30:28	
18:30:32 ERROR| child process failed
18:30:32 INFO | 		FAIL	libvirt_tck.nwfilter	libvirt_tck.nwfilter
timestamp=1329942632	localtime=Feb 22 18:30:32	FAIL:
['090-install-image.t', '100-ping-still-working.t',
'210-no-mac-spoofing.t', '220-no-ip-spoofing.t',
'230-no-mac-broadcast.t', '240-no-arp-spoofing.t', '300-vsitype.t']
18:30:32 INFO | 	END FAIL	libvirt_tck.nwfilter	libvirt_tck.nwfilter
timestamp=1329942632	localtime=Feb 22 18:30:32	
18:30:32 INFO | 	START	libvirt_tck.qemu	libvirt_tck.qemu
timestamp=1329942632	localtime=Feb 22 18:30:32	
18:30:40 ERROR| child process failed
18:30:40 INFO | 		FAIL	libvirt_tck.qemu	libvirt_tck.qemu
timestamp=1329942640	localtime=Feb 22 18:30:40	FAIL:
['205-qcow2-double-backing-file.t']
18:30:40 INFO | 	END FAIL	libvirt_tck.qemu	libvirt_tck.qemu
timestamp=1329942640	localtime=Feb 22 18:30:40	
18:30:40 INFO | 	START	libvirt_tck.selinux	libvirt_tck.selinux
timestamp=1329942640	localtime=Feb 22 18:30:40	
18:30:49 ERROR| child process failed
18:30:49 INFO | 		FAIL	libvirt_tck.selinux	libvirt_tck.selinux
timestamp=1329942649	localtime=Feb 22 18:30:49	FAIL:
['055-dynamic-base-label.t', '100-static-relabel-no.t']
18:30:49 INFO | 	END FAIL	libvirt_tck.selinux	libvirt_tck.selinux
timestamp=1329942649	localtime=Feb 22 18:30:49	
18:30:49 INFO | 	START	libvirt_tck.storage	libvirt_tck.storage
timestamp=1329942649	localtime=Feb 22 18:30:49	
18:31:24 INFO | 		GOOD	libvirt_tck.storage	libvirt_tck.storage
timestamp=1329942684	localtime=Feb 22 18:31:24	completed
successfully
18:31:24 INFO | 	END GOOD	libvirt_tck.storage	libvirt_tck.storage
timestamp=1329942684	localtime=Feb 22 18:31:24	
18:31:24 INFO | END
GOOD	----	----	timestamp=1329942684	localtime=Feb 22 18:31:24	
FYI, the TCK has a pluggable data output format, configurable via the
--format option. By default it outputs in "text" format, which is the
standard Perl TAP format. You can change it to 'html' (pretty printed)
'xml' (a custom structured format) or 'junit' (the JUnit standard).

More options can be added by subclasses TAP::Formatter - there might
be even more on CPAN already I don't know about. So whatever is the
optional format for Autotest, we should make the TCK able to generate
natively

Daniel

    There, I should mention something, the autotest shows the results in its webpage according to the
    testing result of each testrun, for the well-granulated result-showing sake, I let autotest do the log
    saving and result checking work instead of TCK itself.
   
    If we use TCK to manage the log, the autotest would know a little about each testrun beside the return
    value from TCK's main command.

    Another way to make the glue work go well is using TAP parser to parse the TAP file generated by TCK
    and show the results to webpage, but right now, parser in autotest doesn't support this idea as far as
    I know.

    Guannan Ren