用于Junit的嵌入式数据库测试非弹簧应用程序

时间:2016-03-17 05:45:01

标签: java junit junit4 h2 embedded-database

我正在寻找一个可以在JUnit 4.12测试中使用的嵌入式数据库。由于我们的代码库和当前的性质时间线我们不可能模拟数据库调用。我们只关心Mysql数据库。所以我正在寻找某种嵌入式数据库,我可以在每次测试运行之前对其进行初始化。然后在测试后清除它。有些类似于wiremock对http服务器的作用。

我已经完成this&似乎有可能通过H2嵌入式数据库实现它。我在网上找到的大多数链接都谈到了在Spring中使用它。

有人可以告诉我吗

  1. 如果使用H2作为非弹簧应用的Junit测试的嵌入式数据库,可以实现相同的目的吗?如果是,有人可以让我知道如何做到这一点或指向我解释这个用例的链接吗?
  2. 除了H2之外还有其他一些工具可以用来实现我的目标吗?

1 个答案:

答案 0 :(得分:2)

我认为你可以使用H2,但我更喜欢使用hsqldb来达到这个目的。我需要一些嵌入式数据库,它可以模仿sql中一些特定于oracle的特性。据我所知,您可以使用任何嵌入式Java数据库进行单元测试。