Удалите вложенные тестовые классы с помощью Maven2 - PullRequest
2 голосов
/ 14 апреля 2009

Я использую вложенные классы для доступа к закрытым членам в тестах JUnit. Они всегда называются «TestProxy».

Я хотел бы удалить их во время сборки, используя maven2, чтобы не включать его в файл jar.

  • Есть ли опция конфигурации?
  • Можно ли это сделать с помощью плагина? Если так, то прототип был бы хорош! ; -)

Спасибо

Редактировать: зачем использовать частные методы? Мне нужно ввести данные из сторонних систем, которые не могут быть вызваны для каждого теста JUnit. И я действительно не хочу общедоступного установщика для личных данных, или рано или поздно другой программист может использовать его неправильно.

Ответы [ 2 ]

2 голосов
/ 15 апреля 2009

Вот ответ: его можно настроить с помощью Maven. Просто вставьте следующий код в файл pom.xml в разделе build / plugins:

<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-jar-plugin</artifactId>
 <configuration>
   <excludes>
     <exclude>**/*$TestProxy*</exclude>
   </excludes>
 </configuration>
</plugin>

@ см. Документацию: http://maven.apache.org/plugins/maven-jar-plugin/jar-mojo.html#excludes

0 голосов
/ 14 апреля 2009

Для такого рода вещей вы можете обнаружить, что ant-скрипт является первым портом вызова, а не отдельным пользовательским плагином. Просто заставить Maven запускать произвольные ant-скрипты как часть сборки. Проще, чем создавать плагин. Этот вопрос содержит отличное описание запуска сценария ant с этапом сборки process-sources в Maven.

В немного другой заметке, я ожидаю, что вы получите кучу ответов, спрашивающих вас, почему вы проводите модульное тестирование в доступном для учеников классе ...

...