ANT Jenkins单元测试 - 计算失败的测试

时间:2013-02-08 13:56:28

标签: java unit-testing ant jenkins

我想计算失败的测试,并且只在所有测试完成后失败一次。这些测试由Jenkins每晚运行,并在出现故障或错误时报告结果。问题是我甚至无法开始计数,因为这只有failureProperty和errorProperty可以是true或false,但是当它达到第一次失败或错误的测试时,它会停止并失败。我没有找到谷歌的好解决方案,他们向我推荐了这些属性,但他们没有做我需要的。

这是代码:

        <junit printsummary="true" fork="yes" forkmode="once" 
showoutput="false" haltonfailure="no" maxmemory="1024m" 
errorProperty="test.failed" failureProperty="test.failed">
            <classpath refid="junit.classpath" />
            <batchtest fork="yes" todir="${junit.dir}/raw" >
                <formatter type="xml" />
                <fileset dir="${classes.dir}">
                    <include name="**/*Test.class" />
                    <exclude name="*ear*/**"/>
                    <exclude name="**/Base*.class" />
                    <exclude name="**/JNDI*.class" />
                </fileset>
            </batchtest>
        </junit>
    <fail message="At least one test failed or has errors, please check test results in Jenkins to see details!" if="test.failed" />

我是否错过了重要的事情?在这种情况下似乎 haltonfailure =“no”参数不起作用。

如果你能帮助我,请提前致谢!

4 个答案:

答案 0 :(得分:1)

您需要使用ant junitreport生成报告。如果你感兴趣,这会输出一个xml文件,jenkins可以很好地计算和显示,以及进化图等等。

答案 1 :(得分:1)

将JUnit属性haltonerrorhaltonfailure设置为false。然后使用各种报告工具来解析生成的报告。报告可以采用XML格式,您可以使用JUnitreport来解析文件。我更喜欢Jenkins,它会告诉我每个构建,失败的JUnit测试的数量,以及各种不错的报告。其他人使用各种XSLT程序(这正是JUnitreport的目的)。

Word'o Caution :如果您使用JUnitReport,您可能需要在Ant的lib目录中添加一些额外的jar。我有一段时间没有使用过JUnitReport,但我记得我需要Xalan,但现在Java已经出现了。

答案 2 :(得分:1)

同样从另一个类似的问题中检查this answer,了解如何为执行和报告生成配置junit目标。生成报告后,使用JUnit测试报告生成后构建操作进行配置。

您是否尝试过使用printsummary =“withOutAndErr”并进行检查?这对我来说完全没问题。

答案 3 :(得分:1)

哦,嘿,我刚给你发了一个重复的答案,这似乎有效。查看accepted answer here