Как проверить миграцию с весенней загрузкой? - PullRequest
0 голосов
/ 26 апреля 2018

Я бы спросил, как вы тестируете, если миграция прошла успешно.

Сценарий: В первой версии объекта у нас есть несколько полей. В следующей версии я добавляю другую сущность, которая содержит некоторые данные из первой таблицы. Как я могу проверить правильность переноса этих данных.

Конечно, я могу проверить это вручную, написав SELECT и т. Д.

Но есть ли способ проверить это в модульном / интеграционном тесте.

v1

People(
id: Int
name: String
street: String
)

v2

People(
id: Int
name: String
addressId: Int
)

Address(
id: Int
street: String <--- migrated from v1 People table
)

1 Ответ

0 голосов
/ 28 апреля 2018

Я думаю, что вы можете достичь этого, установив режим проверки Hibernate. Он выполнит «тест», как только Flyway завершит свою миграцию. В вашем application.properties примените следующее изменение:

spring.jpa.hibernate.ddl-auto=validate

С этим Hibernate проверит, что ваша таблица соответствует определениям вашей сущности. В противном случае вы получите ошибки, связанные с отсутствующей информацией.

...