ребята, такой вопрос - использую Spring test + jpa(h2) и при запуске тестов получаю ошибку JdbcSQLException: Table "USERS" already exists; SQL statement:
настройки
datasource:
driver-class-name: org.h2.Driver
url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1
username: sa
password: sa
инициализирую DataStore:
return EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.H2)
.setScriptEncoding("UTF-8")
.addScript("schema.sql")
.addScript("data.sql")
.build()
почему он выполняет schema.sql несколько раз ? подобное лечится
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.ANY)
мне интересно понять причину ошибки
сам тест:
тест очень простой
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class IntegrationTests(
@Autowired val restTemplate: TestRestTemplate) {
@BeforeAll fun setup() {
println(">> Setup")
}
@Test
fun contextLoads() {}
}
по сути просто проверка, что контекст поднялся без ошибок