Spring Boot Test загружает schema.sql, определенный в java/resources вместо test/resources

У меня есть следующий тест:

@RunWith(SpringRunner.class)
@ContextConfiguration
@SpringBootTest(classes = {AccountsServerTest.class, PostgresSQLTestDbConfig.class})
@ActiveProfiles("test")
public class NodeRepositoryTest {
......
}

а также у меня есть сценарии schema.sql и data.sql под src/main/resources, которые должны запускаться при запуске приложения.

У меня также есть еще два файла sql под src/test/resources/, и я хочу запустить их при запуске NodeRepositoryTest.

Однако почему-то при запуске NodeRepositoryTest выполняются скрипты из src/main/resources.

Может быть, у кого-то была такая же проблема раньше?

Я был бы очень признателен за любую помощь,

Спасибо


person Andrey Yaskulsky    schedule 31.01.2018    source источник
comment
Вы получили какое-либо решение?   -  person seal    schedule 23.07.2018


Ответы (1)


Вы можете вручную определить сценарии .sql, которые должны применяться к вашему тестовому методу/тестовому классу.

Взгляните на следующий пример из официальной документации (https://docs.spring.io/spring/docs/current/spring-framework-reference/testing.html):

@Test
@Sql({"/test-schema.sql", "/test-user-data.sql"})
public void userTest {
    // execute code that relies on the test data
}
person rieckpil    schedule 31.01.2018