@DataJpaTest не читает свойства spring.jpa. *, А @SpringBootTest - не читает - PullRequest
0 голосов
/ 09 сентября 2018

Я использую Spring Boot 2.0.4.RELEASE и настроил src/test/resources/application.yml на

spring:
  jpa:
    show-sql: false
    hibernate:
      dialect: org.hibernate.dialect.SQLServer2012Dialect
      ddl-auto: none
      naming:
        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
      properties:
        hibernate:
          generate_statistics: false
          show_sql: false

У меня очень простой тест:

@DataJpaTest
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@ExtendWith(SpringExtension.class)
public class MyTest {
  ...
}

Тест игнорирует свойства (его легко увидеть, когда он печатает операторы гибернации). Помещение тех же свойств в файл application.properties работает.

Изменение имени на application-test.yml и выполнение теста профиля также не помогли.

При изменении аннотации @DataJpaTest на @SpringBootTest она работает ...

Важно отметить, что остальные свойства (вещи, относящиеся конкретно к моему приложению и не имеющие префикса spring.*, читаются и используются нормально

Я предпочитаю использовать файл yaml (как в /src/main/resources) и не загружать полный @SpringBootTest только для тестов на чистом JPA ... Есть ли что-то еще, что я могу настроить для этой работы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...