[Yanel-commits] rev 23866 - public/yanel/trunk/src/realms/test/yanel/data/xslt

simon at wyona.com simon at wyona.com
Thu Apr 19 10:07:34 CEST 2007


Author: simon
Date: 2007-04-19 10:07:33 +0200 (Thu, 19 Apr 2007)
New Revision: 23866

Modified:
   public/yanel/trunk/src/realms/test/yanel/data/xslt/jmeter-results-detail-report.xsl
Log:
changed xsl for jmeter results to work with jmeter2.2

Modified: public/yanel/trunk/src/realms/test/yanel/data/xslt/jmeter-results-detail-report.xsl
===================================================================
--- public/yanel/trunk/src/realms/test/yanel/data/xslt/jmeter-results-detail-report.xsl	2007-04-19 08:06:43 UTC (rev 23865)
+++ public/yanel/trunk/src/realms/test/yanel/data/xslt/jmeter-results-detail-report.xsl	2007-04-19 08:07:33 UTC (rev 23866)
@@ -1,101 +1,25 @@
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+<?xml version="1.0"?>
+<xsl:stylesheet 
+  xmlns:xhtml="http://www.w3.org/1999/xhtml"
   xmlns="http://www.w3.org/1999/xhtml"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml" 
+  xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
   version="1.0">
-  
+
   <xsl:output method="xhtml" encoding="UTF-8"/>
-  
-  <!-- Defined parameters (overrideable) -->
-  <xsl:param name="showData" select="'N'"/>
-  
+
   <xsl:template match="testResults">
     <html>
       <head>
         <title>Load Test Results</title>
-          <style type="text/css">
-          body {
-          	font:normal 68% verdana,arial,helvetica;
-          	color:#000000;
-          }
-          table tr td, table tr th {
-          	font-size: 68%;
-          }
-          table.details tr th{
-          	font-weight: bold;
-          	text-align:left;
-          	background:#a6caf0;
-          	white-space: nowrap;
-          }
-          table.details tr td{
-          	background:#eeeee0;
-          	white-space: nowrap;
-          }
-          h1 {
-          	margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
-          }
-          h2 {
-          	margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
-          }
-          h3 {
-          	margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
-          }
-          .Failure {
-          	font-weight:bold; color:red;
-          }
-          
-          
-          img
-          {
-            border-width: 0px;
-          }
-          
-          .expand_link
-          {
-             position=absolute;
-             right: 0px;
-             width: 27px;
-             top: 1px;
-             height: 27px;
-          }
-          
-          .page_details
-          {
-             display: none;
-          }
-                                  
-          .page_details_expanded
-          {
-              display: block;
-              display/* hide this definition from  IE5/6 */: table-row;
-          }
-			  </style>
-        <script language="JavaScript"><![CDATA[
-                           function expand(details_id)
-			   {
-			      
-			      document.getElementById(details_id).className = "page_details_expanded";
-			   }
-			   
-			   function collapse(details_id)
-			   {
-			      
-			      document.getElementById(details_id).className = "page_details";
-			   }
-			   
-			   function change(details_id)
-			   {
-			      if(document.getElementById(details_id+"_image").src.match("expand"))
-			      {
-			         document.getElementById(details_id+"_image").src = "../../img/collapse.jpg";
-			         expand(details_id);
-			      }
-			      else
-			      {
-			         document.getElementById(details_id+"_image").src = "../../img/expand.jpg";
-			         collapse(details_id);
-			      } 
-                           }
-			]]></script>
+        <style type="text/css"> body { font:normal 68% verdana,arial,helvetica;
+          color:#000000; } table tr td, table tr th { font-size: 68%; }
+          table.details tr th{ font-weight: bold; text-align:left;
+          background:#a6caf0; white-space: nowrap; } table.details tr td{
+          background:#eeeee0; white-space: nowrap; } h1 { margin: 0px 0px 5px;
+          font: 165% verdana,arial,helvetica } h2 { margin-top: 1em;
+          margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica } h3 {
+          margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica }
+          .Failure { font-weight:bold; color:red; } </style>
       </head>
       <body>
         <xsl:call-template name="pageHeader"/>
@@ -107,19 +31,12 @@
       </body>
     </html>
   </xsl:template>
-  
+
   <xsl:template name="pageHeader">
     <h1>Load Test Results</h1>
-    <table width="100%">
-      <tr>
-        <td align="left"/>
-        <td align="right">Designed for use with <a
-          href="http://jakarta.apache.org/jmeter">JMeter</a> and <a href="http://ant.apache.org">Ant</a>.</td>
-      </tr>
-    </table>
     <hr size="1"/>
   </xsl:template>
-  
+
   <xsl:template name="summary">
     <h2>Summary</h2>
     <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
@@ -132,20 +49,20 @@
         <th>Max Time</th>
       </tr>
       <tr valign="top">
-        <xsl:variable name="allCount" select="count(/testResults/sampleResult)"/>
-        <xsl:variable name="allFailureCount" select="count(/testResults/sampleResult[attribute::success='false'])"/>
-        <xsl:variable name="allSuccessCount" select="count(/testResults/sampleResult[attribute::success='true'])"/>
+        <xsl:variable name="allCount" select="count(/testResults/*)"/>
+        <xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s='false'])"/>
+        <xsl:variable name="allSuccessCount" select="count(/testResults/*[attribute::s='true'])"/>
         <xsl:variable name="allSuccessPercent" select="$allSuccessCount div $allCount"/>
-        <xsl:variable name="allTotalTime" select="sum(/testResults/sampleResult/@time)"/>
+        <xsl:variable name="allTotalTime" select="sum(/testResults/*/@t)"/>
         <xsl:variable name="allAverageTime" select="$allTotalTime div $allCount"/>
         <xsl:variable name="allMinTime">
           <xsl:call-template name="min">
-            <xsl:with-param name="nodes" select="/testResults/sampleResult/@time"/>
+            <xsl:with-param name="nodes" select="/testResults/*/@t"/>
           </xsl:call-template>
         </xsl:variable>
         <xsl:variable name="allMaxTime">
           <xsl:call-template name="max">
-            <xsl:with-param name="nodes" select="/testResults/sampleResult/@time"/>
+            <xsl:with-param name="nodes" select="/testResults/*/@t"/>
           </xsl:call-template>
         </xsl:variable>
         <xsl:attribute name="class">
@@ -182,7 +99,7 @@
       </tr>
     </table>
   </xsl:template>
-  
+
   <xsl:template name="pagelist">
     <h2>Pages</h2>
     <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
@@ -194,24 +111,23 @@
         <th>Average Time</th>
         <th>Min Time</th>
         <th>Max Time</th>
-        <th/>
       </tr>
-      <xsl:for-each select="/testResults/sampleResult[not(@label = preceding::*/@label)]">
-        <xsl:variable name="label" select="@label"/>
-        <xsl:variable name="count" select="count(../sampleResult[@label = current()/@label])"/>
-        <xsl:variable name="failureCount" select="count(../sampleResult[@label = current()/@label][attribute::success='false'])"/>
-        <xsl:variable name="successCount" select="count(../sampleResult[@label = current()/@label][attribute::success='true'])"/>
+      <xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">
+        <xsl:variable name="label" select="@lb"/>
+        <xsl:variable name="count" select="count(../*[@lb = current()/@lb])"/>
+        <xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s='false'])"/>
+        <xsl:variable name="successCount" select="count(../*[@lb = current()/@lb][attribute::s='true'])"/>
         <xsl:variable name="successPercent" select="$successCount div $count"/>
-        <xsl:variable name="totalTime" select="sum(../sampleResult[@label = current()/@label]/@time)"/>
+        <xsl:variable name="totalTime" select="sum(../*[@lb = current()/@lb]/@t)"/>
         <xsl:variable name="averageTime" select="$totalTime div $count"/>
         <xsl:variable name="minTime">
           <xsl:call-template name="min">
-            <xsl:with-param name="nodes" select="../sampleResult[@label = current()/@label]/@time"/>
+            <xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t"/>
           </xsl:call-template>
         </xsl:variable>
         <xsl:variable name="maxTime">
           <xsl:call-template name="max">
-            <xsl:with-param name="nodes" select="../sampleResult[@label = current()/@label]/@time"/>
+            <xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t"/>
           </xsl:call-template>
         </xsl:variable>
         <tr valign="top">
@@ -221,16 +137,7 @@
             </xsl:choose>
           </xsl:attribute>
           <td>
-            <xsl:if test="$failureCount &gt; 0">
-              <a>
-                <xsl:attribute name="href">#<xsl:value-of select="$label"/>
-                </xsl:attribute>
-                <xsl:value-of select="$label"/>
-              </a>
-            </xsl:if>
-            <xsl:if test="0 &gt;= $failureCount">
-              <xsl:value-of select="$label"/>
-            </xsl:if>
+            <xsl:value-of select="$label"/>
           </td>
           <td>
             <xsl:value-of select="$count"/>
@@ -258,101 +165,34 @@
               <xsl:with-param name="value" select="$maxTime"/>
             </xsl:call-template>
           </td>
-          <td align="center">
-            <a href="">
-              <xsl:attribute name="href">
-                <xsl:text/>javascript:change('page_details_<xsl:value-of select="position()"/>')</xsl:attribute>
-              <img src="../../img/expand.jpg" alt="expand/collapse">
-                <xsl:attribute name="id">
-                  <xsl:text/>page_details_<xsl:value-of select="position()"/>_image</xsl:attribute>
-              </img>
-            </a>
-          </td>
         </tr>
-        <tr class="page_details">
-          <xsl:attribute name="id">
-            <xsl:text/>page_details_<xsl:value-of select="position()"/>
-          </xsl:attribute>
-          <td colspan="8" bgcolor="#FF0000">
-            <div align="center">
-              <b>Details for Page "<xsl:value-of select="$label"/>"</b>
-              <table bordercolor="#000000" border="1" cellpadding="0"
-                cellspacing="0" width="95%">
-                <tr>
-                  <th>Thread</th>
-                  <th>Iteration</th>
-                  <th>Time</th>
-                  <th>Success</th>
-                  <!--
-			            itterations = position() - thread stuff
-			            time="312"
-			            timeStamp="1053622047640"
-			            responseMessage="OK"
-			            threadName="Thread Group-1"
-			            dataType="text"
-			            label="/CansysAandA/processAuthentication.do"
-			            success="true"
-			            -->
-                </tr>
-                <xsl:for-each select="../sampleResult[@label = $label and @threadName != $label]">
-                  <tr>
-                    <td>
-                      <xsl:value-of select="@threadName"/>
-                    </td>
-                    <td>
-                      <xsl:value-of select="position()"/>
-                    </td>
-                    <td>
-                      <xsl:value-of select="@time"/>ms</td>
-                    <td>
-                      <xsl:value-of select="@success"/>
-                    </td>
-                  </tr>
-                </xsl:for-each>
-              </table>
-            </div>
-          </td>
-        </tr>
       </xsl:for-each>
     </table>
   </xsl:template>
-  
+
   <xsl:template name="detail">
-    <xsl:variable name="allFailureCount" select="count(/testResults/sampleResult[attribute::success='false'])"/>
+    <xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s='false'])"/>
     <xsl:if test="$allFailureCount &gt; 0">
       <h2>Failure Detail</h2>
-      <xsl:for-each select="/testResults/sampleResult[not(@label = preceding::*/@label)]">
-        <xsl:variable name="failureCount" select="count(../sampleResult[@label = current()/@label][attribute::success='false'])"/>
+      <xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">
+        <xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s='false'])"/>
         <xsl:if test="$failureCount &gt; 0">
           <h3>
-            <xsl:value-of select="@label"/>
-            <a>
-              <xsl:attribute name="name">
-                <xsl:value-of select="@label"/>
-              </xsl:attribute>
-            </a>
+            <xsl:value-of select="@lb"/>
           </h3>
           <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
             <tr valign="top">
               <th>Response</th>
               <th>Failure Message</th>
-              <xsl:if test="$showData = 'y'">
-                <th>Response Data</th>
-              </xsl:if>
             </tr>
-            <xsl:for-each select="/testResults/sampleResult[@label = current()/@label][attribute::success='false']">
+            <xsl:for-each select="/testResults/*[@lb = current()/@lb][attribute::s='false']">
               <tr>
                 <td>
-                  <xsl:value-of select="@responseCode"/> - <xsl:value-of select="@responseMessage"/>
+                  <xsl:value-of select="@rc | @rs"/> - <xsl:value-of select="@rm"/>
                 </td>
                 <td>
-                  <xsl:value-of select="assertionResult/@failureMessage"/>
+                  <xsl:value-of select="assertionResult/failureMessage"/>
                 </td>
-                <xsl:if test="$showData = 'y'">
-                  <td>
-                    <xsl:value-of select="./binary"/>
-                  </td>
-                </xsl:if>
               </tr>
             </xsl:for-each>
           </table>
@@ -360,7 +200,7 @@
       </xsl:for-each>
     </xsl:if>
   </xsl:template>
-  
+
   <xsl:template name="min">
     <xsl:param name="nodes" select="/.."/>
     <xsl:choose>
@@ -375,7 +215,7 @@
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>
-  
+
   <xsl:template name="max">
     <xsl:param name="nodes" select="/.."/>
     <xsl:choose>
@@ -390,12 +230,12 @@
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>
-  
+
   <xsl:template name="display-percent">
     <xsl:param name="value"/>
     <xsl:value-of select="format-number($value,'0.00%')"/>
   </xsl:template>
-  
+
   <xsl:template name="display-time">
     <xsl:param name="value"/>
     <xsl:value-of select="format-number($value,'0 ms')"/>




More information about the Yanel-commits mailing list