Мои Java JUnit тест на структуру: src/com/project/test/test_junit.java
Ant скрипт для запуска теста JUnit показывает java.lang.ClassNotFoundException
Мой муравей скрипт:
<project name="Test" basedir="." default="unit-test">
<property name="src" value="src"/>
<property name="build-test-classes" value="${src}/com/project/test"/>
<property name="lib" value="lib"/>
<property name="junit4" value="lib/junit-4.12.jar"/>
<target name="unit-test">
<junit printsummary="yes" haltonfailure="yes">
<formatter type="plain" usefile="false"/>
<classpath>
<pathelement location="${junit4}"/>
<pathelement location="${build-test-classes}"/>
</classpath>
<batchtest>
<fileset dir="${build-test-classes}">
<include name="**/*.java"/>
</fileset>
</batchtest>
</junit>
</target>
</project>
PS .: Я изменил некоторые имена, чтобы сделать менее конкретный код.
Во время работы Ant скрипта, я сталкиваюсь следующий вопрос:
unit-test:
[junit] Running test_junit
[junit] Testsuite: test_junit
[junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec
[junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec
[junit]
[junit] Caused an ERROR
[junit] test_junit
[junit] java.lang.ClassNotFoundException: test_junit
[junit] at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[junit] at java.lang.Class.forName0(Native Method)
[junit] at java.lang.Class.forName(Class.java:348)
[junit]
BUILD FAILED
/build_junit_test.xml:23: Test AccountGS_Junit failed
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.actOnTestResult(JUnitTask.java:1959)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:858)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeOrQueue(JUnitTask.java:1904)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:804)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
at org.apache.tools.ant.Main.runBuild(Main.java:851)
at org.apache.tools.ant.Main.startAnt(Main.java:235)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Total time: 0 seconds
Я уже следовал нагрузкам вопросов здесь, но, кажется, что любой ответ решить мою проблему.
Hi Mark. Я также проверил компиляцию кода и не работал. Затем я последовал этому руководству: http://tutorials.jenkov.com/java-unit-testing/running-tests-with-ant.html, который использует java без компиляции. Но хотя я дам еще один снимок с вашим объяснением –