除了为开发中的每个分支创建单独的数据库之外,是否有另一种方法或某种工具来处理多个并行功能分支中的数据库模式更改?
IE。根据一些配置或脚本在内存中启动一个数据库,并在运行测试之前使用 DbUnit 填充。
这个问题专门针对单元测试,但也适用于 UAT。
你看过H2数据库引擎吗?如果您使用的是 Spring,您可以尝试此处记录的方法:Unit Testing JPA with in-memory H2 database(有用的信息,即使不使用 Spring)。快速谷歌搜索产生了这篇博文,表明肯定有人在使用 H2 和 DbUnit。
我们正在使用dbdeploy,它对我们非常有效。它有助于以版本控制方式管理数据库创建脚本。它仍然需要一些工作(例如,如果应用程序同时部署在多个节点上,则进行并发 sql 迁移),但除此之外它开箱即用。
很长一段时间后,似乎Liquibase与DbUnit等其他工具结合使用,应该能够完成我最初提出的要求。
感谢所有其他建议。