如何用弹簧靴测试飞路迁移?

时间:2018-04-26 11:40:40

标签: spring integration-testing flyway

我会问你,如果迁移是成功的,你是如何测试的。

方案: 在实体的第一个版本中,我们有一些字段。在下一个版本中,我添加了另一个实体,其中包含来自第一个表的一些数据。如何测试此数据是否正确迁移。

当然我可以通过编写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 :(得分:0)

我认为您可以通过设置Hibernate验证模式来实现此目的。它将实现一个&#34;测试&#34;一旦Flyway完成迁移。在application.properties中,应用以下更改:

spring.jpa.hibernate.ddl-auto=validate

有了这个,Hibernate将验证您的表是否符合您的实体定义。如果没有,您将收到错误信息的错误。