DBUnit:任何支持 Oracle PLSQL 的内存数据库吗?

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

我正在集成DBUnit来对我的应用程序进行单元测试,然后我遇到了H2内存数据库不支持在SQL脚本中指定的PLSQL函数的问题。

那么,有人可以建议我可以与 DBUnit 集成并可以执行 Oracle PL/SQL 函数的内存数据库(H2 的替代品)吗?

java oracle junit plsql dbunit
2个回答
1
投票

正如第二条评论所提到的,在 PL/SQL 过程、函数和其他功能方面,除了 Oracle DB 之外,没有什么可以做 Oracle 所做的事情。

因此,要使用 DBUnit,解决方案将是物理 Oracle DB,其作用就像 H2 内存数据库。这让生活变得简单,而且效果很好。


0
投票

我知道这篇文章已经有 7 年历史了,但如果你像我一样现在偶然发现这个问题,请使用 Testcontainers 来帮助自己。这是一种为动态测试创建 Docker 容器的方法。他们还支持 OracleFree 和 OracleXE 模块。

https://testcontainers.com/getting-started/

回避[云开发]挑战的一种方法是依赖内存数据库、嵌入式服务、模拟和其他生产依赖项的虚假副本。然而,这些方法带来了自己的问题(例如,内存服务可能不具备生产服务的所有功能,并且行为略有不同)。

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