JUnitReport работает с файлами xml, созданными задачей JUnit. Вы можете написать задачу, которая будет считывать длительности теста из одних и тех же XML-файлов (TEST - *. Xml). Но вы также можете воспользоваться ярлыком и просто прочитать сводный файл, созданный JUnitReport (TESTS-TestSuites.xml), в котором вся информация содержится в одном файле.
Быстрый способ сделать это - использовать немного xsl, чтобы просто показать самые медленные тесты:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:text> </xsl:text>
<xsl:for-each select="testsuites/testsuite">
<xsl:sort select="@time" data-type="number" order="descending" />
<xsl:value-of select="@name"/> : <xsl:value-of select="@time"/>
<xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Для запуска из Ant вы делаете это:
<target name="show.slow.tests">
<xslt in="target/tests-results/TESTS-TestSuites.xml" out="target/slow.txt" style="slow.xsl"/>
</target>
Тогда вы можете просто просмотреть первые X строк, чтобы найти самые медленные тесты X:
jfredrick $ head target / slow.txt