此任務(wù)用于從JUnit測(cè)試框架運(yùn)行測(cè)試。 此任務(wù)依賴于默認(rèn)情況下未包含在Apache Ant分發(fā)中的外部庫(kù)。
junit.jar和ant.junit.jar都需要運(yùn)行此任務(wù),因此將這些JAR放在位置:ANT_HOME/lib 。
<junit>元素在build.xml文件中用于實(shí)現(xiàn)此任務(wù)。 它還支持嵌套元素<classpath>,它提供了類似路徑的結(jié)構(gòu)。
| 屬性 | 描述 | 必需 |
|---|---|---|
printsummary |
打印測(cè)試用例的摘要 | 否 |
fork |
在單獨(dú)的JVM中運(yùn)行測(cè)試 | 否 |
forkmode |
控制著要分叉測(cè)試用例時(shí)創(chuàng)建的JVM數(shù)量 | 否 |
haltonerror |
如果發(fā)生任何錯(cuò)誤,它將停止構(gòu)建過(guò)程 | 否 |
errorproperty |
此屬性在錯(cuò)誤事件中設(shè)置 | 否 |
haltonfailure |
如果測(cè)試失敗,它將停止構(gòu)建過(guò)程。 | 否 |
timeout |
如果在給定時(shí)間內(nèi)沒(méi)有完成,它會(huì)取消單個(gè)測(cè)試。 | 否 |
maxmemory |
分配給分叉JVM的最大內(nèi)存量。 | 否 |
jvm |
用于調(diào)用JVM的命令 | 否 |
dir |
調(diào)用JVM的目錄 | 否 |
下面來(lái)看一些例子,以理解這個(gè)測(cè)試任務(wù)的功能。
<project name="java-ant project" default="run">
<target name="run">
<junit>
<test name="com.yiibai.test.TestCase"/>
</junit>
</target>
</project>
上面的示例運(yùn)行了一個(gè)定義到TestCase中的測(cè)試用例。此示例運(yùn)行單獨(dú)的JVM并對(duì)其運(yùn)行測(cè)試。 fork屬性將運(yùn)行一個(gè)新的JVM。
<project name="java-ant project" default="run">
<target name="run">
<junit printsummary="yes" fork="yes" haltonfailure="yes">
<formatter type="plain"/>
<test name="com.yiibai.test.TestCase"/>
</junit>
</target>
</project>