备份嵌入式数据库(H2)

问题描述 投票:0回答:3

我正在使用

Spring-boot
Jpa
创建一个网络应用程序。一切正常。但在测试过程中,我必须手动创建对象实例并为每个测试填充数据库。我想知道是否可以备份嵌入式数据库并在每次测试开始时恢复它,从而消除测试代码中的混乱。

spring-boot h2 database-backups
3个回答
1
投票

H2 允许您使用

script to
创建 SQL 脚本。然后,您可以在打开连接时通过将
init=...
附加到数据库 URL 来运行 SQL 脚本。


0
投票

最好(也是最简单的方法)是使用 Spring 嵌入式数据库 + SQL 脚本来预加载数据库。 这个答案中描述了一种简单的方法。

一篇非常好的文章显示了每个测试的人口(以及整个设置)是:用于 Spring 集成/功能测试的设置和预加载数据库


0
投票

Spring Boot 有多种初始化数据库的机制,最简单的一种可以说是 通过 Spring JDBC。您需要做的就是创建一个名为

data-test.sql
的文件(假设您的测试配置文件名为“test”),并通过纯 SQL 插入在其中定义所有数据。

© www.soinside.com 2019 - 2024. All rights reserved.