![](/img/trans.png)
[英]merging / re-attaching IN JPA / Hibernate without updating the DB
[英]Hibernate/JPA without DB
想知道是否有可能完全摆脱 SQL 依赖。 假设我正在编写与 DB 通信的测试,这引入了管理 DB 模式的需要,这非常麻烦,因为内存 DB 通常与生产类型的 DB 不匹配。
是否可以使用 Hibernate/JPA 进行测试并且没有下划线 DB Schema?
到目前为止,我知道两种选择,我想在这里扩大我的知识,如果还有其他可能性,请分享。
或者我应该只专注于模拟 DAO 层而不是在这上面浪费时间? 健全性检查 JPA 实体与 DB 是完全不同的故事。
您害怕内存数据库和生产数据库之间的区别吗? 但是您不担心您的两个“模拟”选项和生产之间的巨大差异?
从我的角度来看,任何用于测试的生产数据库的替换都会以某种方式产生误报。 我猜想内存数据库最能模拟真实环境。 特别是如果您使用H2 之类的尝试支持不同 SQL 方言的东西。
只要您只编写小型和封装的单元测试,DAO 层的模拟也可能有所帮助。 但是,一旦您编写集成测试,您就需要以某种方式提供一个数据库。
不 - 如果没有数据库模式或连接,Hibernate 就无法工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.