[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [test-API][PATCH] Add display of cases result to log.xml



Hi hongming,
BTW, could we ignore module or function name in "Test Procedure"
section, because the module and entry function are the same name,
it's a deliberately design, but the "Test Procedure" looks like 
a duplicate naming for others. 

<slice>

network:define:define
network:network_list:network_list
network:start:start
network:network_list:network_list
network:autostart:autostart
network:update:update

</slice>


-- 
Regards,     
Alex


----- Original Message -----
From: "hongming" <honzhang redhat com>
To: gren redhat com
Cc: libvir-list redhat com
Sent: Thursday, August 15, 2013 1:47:05 PM
Subject: Re: [libvirt] [test-API][PATCH] Add display of cases result to	log.xml

Hi Guannan

You can see the new test report from the following url.

http://fileshare.englab.nay.redhat.com/pub/section3/libvirtauto/libvirt-test-API/log.xml

Thanks
Hongming

On 08/15/2013 11:32 AM, Hongming Zhang wrote:
> The original log.xml only display the testrun result, the patch add
> display of case result to log.xml.
> modified:   src/generator.py
> -Perserver case result list and pass it to log_generator class.
> modified:   src/log.xsl
> -Read from xml and display case result
> modified:   src/log_generator.py
> -Create case result xml and add it to log.xml
> ---
>   src/generator.py     |    5 +++--
>   src/log.xsl          |   23 ++++++++++++++++++++---
>   src/log_generator.py |   16 ++++++++++++++--
>   3 files changed, 37 insertions(+), 7 deletions(-)
>
> diff --git a/src/generator.py b/src/generator.py
> index 0cdc9de..208fa7b 100644
> --- a/src/generator.py
> +++ b/src/generator.py
> @@ -87,7 +87,6 @@ class FuncGen(object):
>           env_logger = envlog.env_log()
>           casenumber = len(self.case_name_list)
>           start_time = time.strftime("%Y-%m-%d %H:%M:%S")
> -
>           env_logger.info("Checking Testing Environment... ")
>           envck = env_inspect.EnvInspect(self.env, env_logger)
>   
> @@ -103,6 +102,7 @@ class FuncGen(object):
>   
>           # retflag: [pass, fail, skip]
>           retflag = [0, 0, 0]
> +        case_retlist = []
>           for i in range(casenumber):
>   
>               clean_flag = False
> @@ -165,7 +165,7 @@ class FuncGen(object):
>                       retflag[2] += 1
>   
>                   self.fmt.print_end(mod_case, ret, env_logger)
> -
> +                case_retlist.append(ret)
>           # close hypervisor connection
>           envck.close_hypervisor_connection()
>           end_time = time.strftime("%Y-%m-%d %H:%M:%S")
> @@ -179,6 +179,7 @@ class FuncGen(object):
>           self.log_xml_parser.add_test_summary(self.testrunid,
>                                                self.testid,
>                                                result,
> +                                             case_retlist,
>                                                start_time,
>                                                end_time,
>                                                self.logfile)
> diff --git a/src/log.xsl b/src/log.xsl
> index 577a0a5..0ca6afe 100644
> --- a/src/log.xsl
> +++ b/src/log.xsl
> @@ -119,9 +119,10 @@
>               <tr>
>                 <th width="5%">No.</th>
>                 <th width="5%">Result</th>
> -              <th width="12%">Start</th>
> -              <th width="12%">End</th>
> -              <th width="66%">Test Procedure</th>
> +              <th width="10%">Start</th>
> +              <th width="10%">End</th>
> +              <th width="65%">Test Procedure</th>
> +              <th width="5%">Case Result</th>
>               </tr>
>             </thead>
>             <tbody>
> @@ -164,6 +165,22 @@
>                       </xsl:for-each>
>                     </table>
>                   </td>
> +                <td>
> +                  <table class="pro" cellspacing="1" cellspan="0" >
> +                     <xsl:for-each select="caseresult/case">
> +                        <tr>
> +                          <td>
> +                            <xsl:if test="self::node()[text()='FAIL']">
> +                               <tr class="fail"><xsl:value-of select="current()"/></tr>
> +                            </xsl:if>
> +                            <xsl:if test="self::node()[text()='PASS']">
> +                               <tr class="pass"><xsl:value-of select="current()"/></tr>
> +                            </xsl:if>
> +                          </td>
> +                        </tr>
> +                     </xsl:for-each>
> +                  </table>
> +                </td>
>                 </tr>
>               </xsl:for-each>
>             </tbody>
> diff --git a/src/log_generator.py b/src/log_generator.py
> index be483d6..de18654 100644
> --- a/src/log_generator.py
> +++ b/src/log_generator.py
> @@ -93,7 +93,7 @@ class LogGenerator(object):
>   
>           self. __write_to_file(xmldoc, self.logxml)
>   
> -    def add_test_summary(self, testrunid, testid, result,
> +    def add_test_summary(self, testrunid, testid, result, case_retlist,
>                            start_time, end_time, path):
>           """ add a test summary xml block into log xml file """
>           xmldoc = minidom.parse(self.logxml)
> @@ -101,6 +101,8 @@ class LogGenerator(object):
>           resulttext = self.doc.createTextNode(result)
>           testresult.appendChild(resulttext)
>   
> +        caseresult = self.doc.createElement('caseresult')
> +
>           teststarttime = self.doc.createElement('start_time')
>           starttimetext = self.doc.createTextNode(start_time)
>           teststarttime.appendChild(starttimetext)
> @@ -126,10 +128,20 @@ class LogGenerator(object):
>                           test.childNodes.insert(0, testendtime)
>                           test.childNodes.insert(0, teststarttime)
>                           test.childNodes.insert(0, testresult)
> +                        test.childNodes.insert(0, caseresult)
> +                        for ret in reversed(case_retlist):
> +                            retstr = ''
> +                            if ret == 0:
> +                                retstr = 'PASS'
> +                            else:
> +                                retstr = 'FAIL'
> +                            itemresult = self.doc.createElement('case')
> +                            caseresulttext = self.doc.createTextNode(retstr)
> +                            itemresult.appendChild(caseresulttext)
> +                            caseresult.childNodes.insert(0,itemresult)
>   
>           self. __write_to_file(xmldoc, self.logxml)
>   
> -
>       def add_testrun_summary(self, testrunid, passnum, failnum, totalnum,
>                               start_time, end_time):
>           """ add a testrun summary xml block into log xml file """

--
libvir-list mailing list
libvir-list redhat com
https://www.redhat.com/mailman/listinfo/libvir-list


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]