Создание сценария ANT для развертывания в Glassfish, запуска тестов junit и затем отмены развертывания

Привет, ребята, у меня есть приложение j2ee, которое я создаю с помощью Netbeans. Моя задача - изменить build.xml так, чтобы после сборки приложения ANT развертывал приложение на сервере, запускал задачи Junit в приложении, а затем отменял развертывание приложения. Пока что у меня работают развертывание и отмена развертывания, но у меня возникают некоторые проблемы с запуском задач junit.

У меня есть клиентский проект в Netbeans, в котором лежат мои задачи junit. Моя проблема в том, что когда этот проект построен, он не компилирует мои тесты junit в .jar. Это вызывает проблемы, когда я запускаю свои задачи ant junit и ANT не может найти соответствующие файлы .class для тестов junit.

В свойствах проекта Netbeans он позволяет мне установить «Папки исходного пакета» и «Папки тестового пакета». Если я добавляю папку «test» в «Папки исходного кода» и создаю проект, он компилирует тесты и включает их в jar. Это работает, однако не позволяет мне запускать тесты junit в качестве тестов в netbeans, что замедляет разработку.

У кого-нибудь был опыт решения такой проблемы? Может быть простое решение, которое я упускаю из виду, поэтому, если у кого-то есть совет, я был бы признателен. Заранее спасибо.

-Брад


person bradd    schedule 23.01.2010    source источник


Ответы (2)


Если я понимаю, о чем вы спрашиваете,

Вам не нужно компилировать тестовые классы в jar. Просто скомпилируйте их в какой-нибудь каталог, скажем «классы». Затем просто включите этот каталог во вложенный элемент набора файлов для задачи junit.

Простой пример,

<target name="junit">
  <junit printsummary="true">
    <classpath>
      <pathelement location="${classes.dir}"/>
    </classpath>

    <test name="test.class.TestClass"/>
  </junit>
</target>
person Eric    schedule 24.01.2010
comment
Я понял, что делаю не так. Я указывал путь к классам для тестов junit в глубину каталога. Это была ошибка новичка. Я указывал на com / blah / blah2 / blah3, который явно не работает. - person bradd; 26.01.2010

Пришлось указать моей задаче junit правильный путь к классам. Указывает на точный каталог файлов .class (project1 / classes / com / blah / blah2 / blah3), что неверно. Установите путь к классам project1 / classes, и он сработал. Ошибка нубов.

person bradd    schedule 25.01.2010