Миграция Flyway в модульных тестах выдает ошибкуJAVA

Программисты JAVA общаются здесь
Anonymous
Миграция Flyway в модульных тестах выдает ошибку

Сообщение Anonymous »


У меня есть существующая база данных, и я хотел написать несколько модульных тестов для @Service, который ее использует. Поэтому я прикинул H2 в памяти для тестов.

Поскольку это уже существующая БД, я просто использую студию управления SQL для экспорта определений интересующих меня таблиц, включая ограничения, fk. и т. д.

Как POC я имею следующее:

@Test недействительный тест () { ConnectionFactory ConnectionFactory = новый H2ConnectionFactory(H2ConnectionConfiguration.builder().inMemory("test").build()); DatabaseClient dataClient = DatabaseClient.create(connectionFactory); Пролетный путь =Flyway.configure().dataSource("jdbc:h2:mem:test;MODE=MSSQLServer", null, null) .locations("путь к классам:миграции/dtms") .baselineOnMigrate(истина) .нагрузка(); пролет.мигрировать(); UserDetailsService userDetailsService = новый UserDetailsService (databaseClient); UserDetails userDetails = userDetailsService.findByUsername("test").block(); Но это вызывает исключение в flyway.migrate().

org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException: не удалось выполнить миграцию V1_1__init.sql ------------------------------- Состояние SQL: 42000 Код ошибки: 42000 Сообщение: Синтаксическая ошибка в операторе SQL. Похоже, что мой сценарий работает в студии SQL mgmt, поэтому я не вижу, в чем будет заключаться синтаксическая ошибка? Что-нибудь, что мне не хватает?

Вернуться в «JAVA»