Advertisement
Guest User

CTest2JUnit.xsl

a guest
Jul 2nd, 2011
506
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 1.63 KB | None | 0 0
  1. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  2. <xsl:output method="xml" indent="yes"/>
  3.  
  4.     <xsl:template match="/Site/Testing">    
  5.         <testsuite>
  6.             <xsl:apply-templates select="Test"/>
  7.         </testsuite>
  8.     </xsl:template>
  9.  
  10.     <xsl:template match="Test">
  11.         <xsl:variable name="testcasename"><xsl:value-of select= "Name"/></xsl:variable>
  12.         <xsl:variable name="exectime">
  13.             <xsl:for-each select="Results/NamedMeasurement">
  14.                 <xsl:if test="@name = 'Execution Time'">
  15.                     <xsl:value-of select="."/>
  16.                 </xsl:if>
  17.             </xsl:for-each>
  18.         </xsl:variable>
  19.        
  20.             <testcase name="{$testcasename}" classname="TestSuite" time="{$exectime}">
  21.             <xsl:if test="@Status = 'passed'">
  22.             </xsl:if>
  23.             <xsl:if test="@Status = 'failed'">
  24.                 <xsl:variable name="failtype">
  25.                     <xsl:for-each select="Results/NamedMeasurement">
  26.                         <xsl:if test="@name = 'Exit Code'">
  27.                             <xsl:value-of select="."/>
  28.                         </xsl:if>
  29.                     </xsl:for-each>
  30.                 </xsl:variable>
  31.                 <xsl:variable name="failcode">
  32.                     <xsl:for-each select="Results/NamedMeasurement">
  33.                         <xsl:if test="@name = 'Exit Value'">
  34.                             <xsl:value-of select="."/>
  35.                         </xsl:if>
  36.                     </xsl:for-each>
  37.                 </xsl:variable>
  38.                 <error message="{$failtype} ({$failcode})"><xsl:value-of select="Results/Measurement/Value/text()" /></error>
  39.             </xsl:if>
  40.             <xsl:if test="@Status = 'notrun'">
  41.                 <skipped><xsl:value-of select="Results/Measurement/Value/text()" /></skipped>
  42.             </xsl:if>
  43.         </testcase>
  44.     </xsl:template>
  45.  
  46. </xsl:stylesheet>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement