Я разрабатываю приложение Eclipse SWT с использованием Eclipse. Есть также несколько тестов JUnit 4, которые тестируют некоторые DAO. Но когда я пытаюсь запустить тесты через сборку ant, все тесты не выполняются, потому что классы тестов не найдены.
Google вырастил около миллиона людей, у которых у всех одна и та же проблема, но ни одно из их решений, похоже, не работает для меня -.-.
Это содержимое моего файла build.xml:
<property name="test.reports" value="./test/reports" />
<property name="classes" value="build" />
<path id="project.classpath">
<pathelement location="${classes}" />
</path>
<target name="testreport">
<mkdir dir="${test.reports}" />
<junit fork="yes" printsummary="no" haltonfailure="no">
<batchtest fork="yes" todir="${test.reports}" >
<fileset dir="${classes}">
<include name="**/Test*.class" />
</fileset>
</batchtest>
<formatter type="xml" />
<classpath refid="project.classpath" />
</junit>
<junitreport todir="${test.reports}">
<fileset dir="${test.reports}">
<include name="TEST-*.xml" />
</fileset>
<report todir="${test.reports}" />
</junitreport>
</target>
Тестовые классы находятся в каталоге build вместе с классами приложения, хотя они находятся в некоторых подпапках в соответствии с их пакетами.
Может быть, это тоже важно: сначала Ant пожаловался, что JUnit не находится в его пути к классам, но, поскольку я поместил его туда (с редактором конфигурации eclipse), он жалуется, что JUnit дважды находится в его пути к классам.
WARNING: multiple versions of ant detected in path for junit
[junit] jar:file:C:/Users/as df/Documents/eclipse/plugins/org.apache.ant_1.7.1.v20090120-1145/lib/ant.jar!/org/apache/tools/ant/Project.class
[junit] and jar:file:/C:/Users/as%20df/Documents/eclipse/plugins/org.apache.ant_1.7.1.v20090120-1145/lib/ant.jar!/org/apache/tools/ant/Project.class
Я попытался указать каждый подкаталог, каждый файл класса, я попробовал наборы файлов и списки файлов, похоже, ничего не работает.
Спасибо за вашу помощь, я часами сижу на этой штуке ...