使用testrunner运行fitnesse测试后,我得到一个包含所有结果的xml文件。 现在我无法弄清楚如何在hudson GUI中为特定作业显示这些结果。
我上网了,我找到的是几个人从CruiseControl.NET修改xsd文件,但实际上没有人显示它正在工作!
如果有人可以帮助我或指出我正确的方向,那将非常感激。
谢谢。 Yohann
答案 0 :(得分:3)
我将xml输出的xslt从fitnesse转换为junit格式并发布测试结果。 不幸的是,我无法在hudson中显示失败的html结果,但这不是一个真正的问题,因为我想知道的是我的验收测试是否正常。
下面是我使用的xslt的副本。
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:element name="testsuite">
<xsl:attribute name="tests">
<xsl:value-of select="sum(testResults/finalCounts/*)" />
</xsl:attribute>
<xsl:attribute name="failures">
<xsl:value-of select="testResults/finalCounts/wrong" />
</xsl:attribute>
<xsl:attribute name="disabled">
<xsl:value-of select="testResults/finalCounts/ignores" />
</xsl:attribute>
<xsl:attribute name="errors">
<xsl:value-of select="testResults/finalCounts/exceptions" />
</xsl:attribute>
<xsl:attribute name="name">AcceptanceTests</xsl:attribute>
<xsl:for-each select="testResults/result">
<xsl:element name="testcase">
<xsl:attribute name="classname">
<xsl:value-of select="/testResults/rootPath" />
</xsl:attribute>
<xsl:attribute name="name">
<xsl:value-of select="relativePageName" />
</xsl:attribute>
<xsl:choose>
<xsl:when test="counts/exceptions > 0">
<xsl:element name="error">
<xsl:attribute name="message">
<xsl:value-of select="counts/exceptions" />
<xsl:text> exceptions thrown</xsl:text>
<xsl:if test="counts/wrong > 0">
<xsl:text> and </xsl:text>
<xsl:value-of select="counts/wrong" />
<xsl:text> assertions failed</xsl:text>
</xsl:if>
</xsl:attribute>
</xsl:element>
</xsl:when>
<xsl:when test="counts/wrong > 0">
<xsl:element name="failure">
<xsl:attribute name="message">
<xsl:value-of select="counts/wrong" />
<xsl:text> assertions failed</xsl:text>
</xsl:attribute>
</xsl:element>
</xsl:when>
</xsl:choose>
</xsl:element>
</xsl:for-each>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
答案 1 :(得分:2)
FitNesse有一些变化将支持junit格式化结果的返回。我不确定确切的日期,但是当他们这样做时,需要进行单独的转换活动。
应该可以很快使用新的-c命令行参数在hudson中运行测试以运行测试,然后使用-c参数再次运行它以请求以junit格式进行测试的最新结果。同样适用于套房。
当发布版已经完成时,我会回来更新该功能。
我回来了。 -c方法还有一些工作要做,但是有一个新的Hudson插件可以直接在Hudson中安装。它现在不是我的团队的想法解决方案,但它适用于一些团队。
获得它:
答案 2 :(得分:2)