Тест JUnit не проходит в сборке Ant - PullRequest
0 голосов
/ 25 апреля 2020

Я использую 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...