如何使用内存数据库在测试用例中编写



我使用Oracle作为我的数据库,Spring Boot作为我的框架。

我不知道如何编写测试用例来检查数据库查询?我听说可以通过内存数据库实现。但是找不到合适的例子。

假设在我的代码中,我编写了一个SELECT * FROM tableName的 SQL 查询,它向我返回了一个结果集对象。

那么在编写测试用例时,我该如何检查呢?

每次我不想进入数据库并获取查询时。

我知道这是可能的,但我的问题是如何用我将存储在任何文件中的虚拟结果替换查询的结果。

提前致谢

您应该使用另一个使用 H2 内存数据库的休眠配置初始化休眠SessionFactory,示例 test-hibenate.properties

hibernate.dialect=org.hibernate.dialect.H2Dialect
hibernate.connection.url=jdbc:h2:mem:orm
javax.persistence.schema-generation.database.action=drop-and-create

然后在您的测试中,您可以以常规方式使用您的 DAO。

如果使用纯 JDBC,则可以通过以下方式创建与 H2 内存中数据库的连接:

Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;DB_CLOSE_DELAY=-1", "", "");

您将需要 H2 数据库依赖项:https://mvnrepository.com/artifact/com.h2database/h2

相关内容

  • 没有找到相关文章

最新更新