JUnitReport जुनीट कार्य द्वारा उत्पादित एक्सएमएल फाइलों पर काम करता है। आप एक ऐसा कार्य लिख सकते हैं जो एक ही एक्सएमएल फाइलों (टेस्ट - *। एक्सएमएल) से परीक्षण अवधि को पढ़ेगा। लेकिन आप शॉर्टकट भी ले सकते हैं और 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>
चींटी से चलाने के लिए आप यह करते हैं:
<target name="show.slow.tests">
<xslt in="target/tests-results/TESTS-TestSuites.xml" out="target/slow.txt" style="slow.xsl"/>
</target>
तो फिर तुम सिर्फ कर सकते हैं पहले एक्स लाइनों को देखो एक्स धीमी परीक्षण लगता है:
jfredrick $ सिर लक्ष्य/slow.txt
ForcingBuildShouldNotLockProjectInQueuedStateTest: 11.581
CruiseControlControllerTest: 7.335
AntBuilderTest: 6.512
Maven2BuilderTest: 4.412
CompositeBuilderTest: 2.222
ModificationSetTest: 2.05
NantBuilderTest: 2.04
CruiseControlConfigTest: 1.747
ProjectTest: 1.743
BuildLoopMonitorTest: 0.913
स्रोत
2008-11-11 08:42:04
बस ब्याज से बाहर, आप क्यों जानना चाहते हैं? मेरे सबसे उपयोगी jUnit परीक्षणों में से एक लंबा समय लगता है - क्योंकि कोड अक्षम नहीं है, लेकिन क्योंकि यह शर्तों के एक बहुत ही पूर्ण सेट (तीन के लिए() लूप गहरे) के साथ परीक्षण करता है – slim
हमारे पास बहुत खराब लिखित परीक्षण हैं। कुछ बहुत अनावश्यक सेट-अप करते हैं। कुछ परीक्षण Thread.sleep() का उपयोग करते हैं। कुछ को चलाने के लिए वास्तव में एक लंबा समय चाहिए। हमारे सुइट को चलाने के लिए आधे घंटे लगते हैं और मैं इसे तेज करने के लिए आसान लक्ष्य ढूंढ रहा हूं। –