此任務用於從JUnit測試框架執行測試。 此任務依賴於預設情況下未包含在Apache Ant分發中的外部庫。
junit.jar
和ant.junit.jar
都需要執行此任務,因此將這些JAR放在位置:ANT_HOME/lib 。
<junit>
元素在build.xml
檔案中用於實現此任務。 它還支援巢狀元素<classpath>
,它提供了類似路徑的結構。
屬性 | 描述 | 必需 |
---|---|---|
printsummary |
列印測試用例的摘要 | 否 |
fork |
在單獨的JVM中執行測試 | 否 |
forkmode |
控制著要分叉測試用例時建立的JVM數量 | 否 |
haltonerror |
如果發生任何錯誤,它將停止構建過程 | 否 |
errorproperty |
此屬性在錯誤事件中設定 | 否 |
haltonfailure |
如果測試失敗,它將停止構建過程。 | 否 |
timeout |
如果在給定時間內沒有完成,它會取消單個測試。 | 否 |
maxmemory |
分配給分叉JVM的最大記憶體量。 | 否 |
jvm |
用於呼叫JVM的命令 | 否 |
dir |
呼叫JVM的目錄 | 否 |
下面來看一些例子,以理解這個測試任務的功能。
<project name="java-ant project" default="run">
<target name="run">
<junit>
<test name="com.yiibai.test.TestCase"/>
</junit>
</target>
</project>
上面的範例執行了一個定義到TestCase
中的測試用例。此範例執行單獨的JVM並對其執行測試。 fork
屬性將執行一個新的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>