【发布时间】:2011-01-02 00:11:37
【问题描述】:
使用 embedded h2 datasource 和可选的 JUnit 进行集成测试的 Spring 配置是什么样的?
我第一次尝试SingleConnectionDataSource 基本上成功了,但在需要同时连接多个连接或暂停事务的更复杂的测试中失败了。我认为tcp based server mode 中的 h2 可能也可以,但这可能不是内存中临时嵌入式数据库的最快通信模式。
有哪些可能性及其优点/缺点?另外,您如何创建表/填充数据库?
更新:让我们指定一些对此类测试很重要的具体要求。
- 数据库应该是临时的并且在内存中
- 出于速度要求,连接可能不应该使用 tcp
- 如果我可以在调试期间使用数据库工具检查数据库的内容,那就太好了
- 我们必须定义一个数据源,因为我们不能在单元测试中使用应用服务器数据源
【问题讨论】:
标签: unit-testing spring embedded-database h2