testing - 每次测试运行后重置数据库

标签 testing persistence automated-tests hsqldb h2

我有以下问题:

我有一个预装了大量测试数据的数据库。每次测试运行后,我想丢弃测试过程所做的更改。我已经尝试使用嵌入式 H2 DB 来做到这一点。我会用原始文件覆盖数据库文件,问题就会解决。但是又出现了一个问题:H2不作为服务器运行不支持多线程。

之后我查看了 HSQLDB。如果我理解正确,如果它被用作普通文件数据库(不在内存中),它仍会将数据库的内容加载到内存中,并在一段时间后将更改保存到磁盘。

是否有可能只将文件 DB 读入内存,在那里使用它并在最后丢弃任何更改?这将是完美的。使用回滚的解决方案也很棒。

谢谢, 丹尼尔

最佳答案

对于H2数据库:

关于testing - 每次测试运行后重置数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19655263/

相关文章:

testing - 带有空对象的 junit 测试用例

ios - 小型数据库的方法 - iOS

java - entityManager.persist(用户) -> javax.persistence.EntityExistsException : User@b3089 is already persistent

python - 每次执行代码后 python 列表大小持续增加

ruby-on-rails - Rails 测试期间发生了什么?

performance - 如何对自定义Excel加载项和自动化功能进行性能测试

c++ - 使用 Catch 在 BDD 样式测试中对多个数据进行一次测试

Java 程序具有 Linux 方法 - 我可以在其上运行 Junit 测试用例吗?

javascript - Testcafe headless 可见性检查

java - 如何从 GUI 按钮启动 JUnit @Suite?