Я использую Ant build в моем проекте. Ant версия 1.10.5 и Junit версия 4.12. При запуске тестового примера junit через Ant он завершается сообщением «Ошибка». Но при выполнении тестового примера в моей IDE (окончательная версия Intellij) все тестовые примеры пройдены.
Примечание. Если я удалил класс (com. company.ClassBTest. java) в тесте. Все тестовые примеры передаются в Ant Build.
Ошибка, выданная ANT
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.actOnTestResult(JUnitTask.java:2215)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:1041)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeOrQueue(JUnitTask.java:2162)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:853)
Вот моя сборка. xml
<property name="src.dir" location="src"/>
<property name="bin.dir" location="out"/>
<property name="lib.dir" location="lib"/>
<property name="test-src" value="test"/>
<property name="test-out" value="out/test/"/>
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>
<target name="init">
<tstamp/>
<mkdir dir="${bin.dir}"/>
</target>
<target name="clean" description="remove intermediate files">
<delete dir="${bin.dir}"/>
</target>
<target name="compile" depends="clean,init" description="compile the Java source code to class files">
<mkdir dir="${bin.dir}"/>
<javac debug="on"
debuglevel="vars,lines,source"
listfiles="yes"
srcdir="${src.dir}"
fork="true"
destdir="${bin.dir}">
<classpath refid="project.class.path"/>
</javac>
</target>
<path id="project.class.path">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>
</path>
<path id="test.class.path" description="point out Junit jar file location">
<path refid="project.class.path"/>
<pathelement location="${bin.dir}"/>
<pathelement location="${test-out}"/>
</path>
<target name="testCompile" depends="compile" description="compile .java in test Folder">
<mkdir dir="${test-out}"/>
<javac srcdir="${test-src}" includeantruntime="true" destdir="${test-out}">
<classpath refid="test.class.path"/>
</javac>
</target>
<target name="Run-JunitTest" depends="testCompile" description="run all junit testCases">
<junit printsummary="yes" haltonfailure="yes">
<classpath>
<path refid="test.class.path"/>
</classpath>
<batchtest fork="true" >
<fileset dir="${test-out}">
<include name="**/*Test.class"/>
</fileset>
</batchtest>
</junit>
</target>
<target name="Ant-version" description="Display Ant version">
<echo>${ant.version}</echo>
</target>
Ниже приведена структура моего проекта
Testing
- lib
—>Contains all Jar fils for Junit 4.12 and Mockito
- out
->com.company
—>ClassA.class
—>ClassB.class
->test
->com.company
—>ClassATest.class
—>ClassBTest.class
- src
->com.company
—>ClassA.java
—>ClassB.java
- test
->com.company
—>ClassATest.java
—>ClassBTest.java