Я пытаюсь создать приложение, начинающееся с Archetype Appfuse, но у меня возникают некоторые странные проблемы. На этот раз я бы хотел использовать hsqldb для автоматических модульных тестов и тестов интеграции и mysql db для моего ручного тестирования, чтобы я мог легко манипулировать данными, когда мне это нужно, поэтому было бы неплохо автоматически переключать профили во время фазы тестирования. Есть ли способ сделать это?Используйте альтернативный профиль Maven во время фазы тестирования
3
A
ответ
7
Я не уверен, что это именно то, о чем вы просите, но вы можете сделать следующее, чтобы настроить несколько фильтров для вашего проекта Maven.
<filters>
<filter>/your/path/filter-${env}.properties</filter>
</filters>
Таким образом, вы можете настроить несколько профилей с помощью:
<profiles>
<profile>
<id>local</id>
<properties>
<env>local</env>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<env>test</env>
</properties>
</profile>
</profiles>
Вы можете запустить сборку с соответствующим файлом свойств с помощью:
mvn -P <profile id>
Это потребует, имеющих файлы свойств, расположенных по адресу:
/your/path/filter-local.properties
/your/path/filter-test.properties
2
Не уверен, что это может помочь вам вообще, но вы можете указать альтернативные файлы ресурсов в папке/src/test/resources, которые переопределяют те, что находятся в/src/main/resources при запуске тестов.
Здесь я определяю альтернативный файл placeholders.properties, чтобы указать другое соединение db, которое будет использоваться на этапе тестирования.
Смежные вопросы
- 1. Зависимость Maven (MySQL-Connector) не найдена во время фазы тестирования
- 2. Доступ к загруженным файлам во время фазы тестирования Maven
- 3. Maven - используйте разные классы java во время фазы «тестирования» и «войны»
- 4. Интеграция Maven testng - тесты вне testng.xml выполняются во время фазы тестирования maven
- 5. Исключая «предоставленные» зависимости от области действия во время фазы «тестирования»?
- 6. Maven - плагин FindBugs - исключение из фазы тестирования
- 7. ли профиль maven, сконфигурированный для выполнения фазы интеграции во время жизненного цикла сборки?
- 8. caffe забывает заданную переменную во время фазы тестирования
- 9. Возможно ли изменить имя приложения в iTunesConnect перед выпуском (используйте фиктивное имя во время фазы тестирования)
- 10. Maven и копирование во время тестирования
- 11. persistence.xml не найден во время тестирования maven
- 12. Как проверить, что цель maven вызвана во время фазы
- 13. Во время фазы maven jsp ставится на цель?
- 14. MissingResourceException - Bundle не найден во время фазы интеграции maven
- 15. Обновление тега сценария jsp во время фазы сборки maven
- 16. Как протестировать xml-файлы во время фазы maven (3)
- 17. Плагин зависимости Maven - загрузите банку во время фазы упаковки
- 18. Maven - extract /test/resources/my.zip in/target во время фазы тестирования
- 19. Как я могу заставить maven использовать мою макетную версию зависимостей во время фазы тестирования
- 20. Выполнение DDL поколения во время установки фазы
- 21. Переопределение log4j.properties во время тестирования
- 22. Используйте другую базу данных для фазы тестирования npm
- 23. Как отключить профиль во время выполнения команды maven-release-plugin
- 24. Async работает во время фазы дайджеста
- 25. Удаления предка во время фазы событий кипящего
- 26. Реагент Figwheel npes во время фазы сборки
- 27. Получение CommandTarget во время Executed фазы
- 28. Как исключить область тестирования maven из фазы пакета?
- 29. Принудительное выполнение фазы Maven
- 30. Выполнение определенной фазы Maven
Хотя это, безусловно, хороший способ переключить файлы свойств с выполнения maven на выполнение maven. Я надеялся на что-то более зернистое. Я хочу просто выполнить mvn clean jetty: запустите или аналогичные, а затем ресурсы будут заполнены заполнителями, которые поступают из тестового профиля, а затем, как только тесты пройдут, я хотел бы автоматически переключиться на другой профиль, который затем будет использоваться для замены заполнителей и последующего запуска сервера причала. В основном я хочу запустить модульные тесты в другой конфигурации базы данных :-) – cdecker
Я вижу - так вы хотите использовать разные профили для разных фаз жизненного цикла Maven? Я не уверен, что это возможно, но мы увидим, если кто-нибудь еще ответит. –
Вы не можете использовать разные профили для разных фаз одного и того же запуска. Я столкнулся с этой проблемой с 2,0,3 дня. Я обойду это с mvn -PlocalTest чистым пакетом, mvn -PfullBuild чистым развертыванием пакета. – sal