У меня есть Jhipster Сгенерировано с v3.4.0 (с использованием Gradle).Запуск тестов интеграции JUnit Spring/JHipster в STS
Я пытаюсь запустить и отладить модульные тесты от STS.
Из документации:
Эти тесты могут быть запущены непосредственно в IDE, щелкнув правой кнопкой мыши на каждом тестовом классе, или запустив МВН чистый тест (или ./gradlew тест, если вы запустите Gradle).
Хотя Gradle задача $.gradlew test
выполняется, как ожидалось, при попытке «правой кнопкой мыши» и Run As Junit Test
или Debug As Junit
тест - я получаю исключения вокруг базы данных:
Небольшая часть StackTrace:
org.springframework.beans.factory.BeanCreationException: Ошибка создание bean-компонента с именем 'org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration': I отклонение автоуведомленных зависимостей не удалось; вложенное исключение org.springframework.beans.factory.BeanCreationException: Не удалось метод autowire: общественная пустота org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration.setFilterChainProxySecurityConfigurer (org.springframework.security.config.annotation .ObjectPostProcessor, java.util.List) throws java.lang.Exception; вложенное исключение: org.springframework.beans.factory.BeanExpressionException: выражение не удалось выполнить синтаксический анализ; вложенное исключение: org.springframework.beans.factory.BeanCreationException: Ошибка создание bean-компонента с именем 'securityConfiguration': инъекция неавторизованных зависимостей; вложенное исключение org.springframework.beans.factory.BeanCreationException: Не удалось autowire поле: частный org.springframework.security.core.userdetails.UserDetailsService web.myapp.core.config.SecurityConfiguration.userDetailsService; Вложенное исключение - org.springframework.beans.factory.BeanCreationException: Ошибка создание bean-компонента с именем 'userDetailsService': инжекция автоуведомленных зависимостей не удалась; Вложенное исключение: org.springframework.beans.factory.BeanCreationException: не удалось поле autowire: private web.myapp.core.repository.UserRepository web.myapp.core.security.UserDetailsService.userRepository; вложенная исключение org.springframework.beans.factory.BeanCreationException: Ошибка создания боб с именем «userRepository»: Невозможно создать внутренний боб «(внутренний компонент) # 1c752902» типа [org.springframework.orm.jpa.SharedEntityManagerCreator ] при установке bean property 'entityManager'; вложенное исключение: org.springframework.beans.factory.BeanCreationException: ошибка создание bean-компонента с именем '(внутренняя компонента) # 1c752902': не удается разрешить ссылку на bean 'entityManagerFactory' при установке конструктора аргумент; вложенное исключение - org.springframework.beans.factory.BeanCreationException: ошибка создание bean с именем 'entityManagerFactory', определенным в пути класса ресурс [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Вызов метода init не удался; вложенное исключение: org.hibernate.cache.NoCacheRegionFactoryAvailableException: Кэш второго уровня используется в приложении, но свойство hibernate.cache.region.factory_class не задано; пожалуйста, либо отключите кеш второго уровня, либо настройте правильную область фабрики, используя настройку hibernate.cache.region.factory_class и убедитесь, что второй путь кэш-провайдера уровня (hibernate-infinispan, например) доступен в пути класса .
Мое предположение о том, что правильный профиль для тест-базы данных не инициализирован: src/test/resources/application.yml
Любые советы по настройке этого профиля в STS?
Update
Я обновил с некоторым скрином-магазинами согласно https://jhipster.github.io/configuring-ide-eclipse-gradle/:
Фильтры Нет ресурсов
Project Properties > Resource > Resource Filters
(ни один не добавленную STS, когда я импортировал проектПроверено, чтобы убедиться,
build/generated/source/apt/main
добавляется в настройки Путь сборки Java подProject Properties > Java Build Path
Вы выполнили [Eclipse and Gradle setup guide] (https://jhipster.github.io/configuring-ide-eclipse-gradle/)? Ваша проблема в том, что папка тестового ресурса настроена неправильно, что должно было быть в обычном порядке. –
@JulienDubois Я сделал это как можно ближе и установил плагин buildship (хотя это было после импорта моего проекта). Я удалю Gradle STS Plugin и повторно импортирую с установленным buildship. –
Привет @ jordan.baucke, извините за комментарий в этой старой теме, но вы смогли найти решение этой проблемы? У меня такая же проблема, и я пока не нашел решения. Благодаря! –