【发布时间】:2017-06-15 04:45:20
【问题描述】:
我在 Spring MVC 应用程序中使用 Flyway 来管理我的数据库的状态。
我在我的 servlet 上下文 XML 文件中完全按照their docs 中的建议进行了配置
<bean id="flyway" class="org.flywaydb.core.Flyway" init-method="migrate">
<property name="dataSource" ref="..."/>
...
</bean>
<!-- The rest of the application (incl. Hibernate) -->
<!-- Must be run after Flyway to ensure the database is compatible with the code -->
<bean id="sessionFactory" class="..." depends-on="flyway">
...
</bean>
我想在我的 JUnit 测试中做两件事 -
有一次,在所有测试之前,删除并重新创建数据库并让它重新迁移。这将为每个测试套件创建一个干净的数据库。
在每次测试之前,清理所有数据库表。在其他框架(例如 RSpec/Rails)中,我通过以事务方式运行 DB 语句来实现这一点,以便它们在测试结束时回滚。不确定 Spring MVC 世界中的最佳实践是什么。
我不知道从哪里真正开始实施上述内容,因此感谢任何指导。
谢谢!
【问题讨论】:
标签: java spring spring-mvc junit flyway