适用于单元及集成测试的优秀内存MongoDB实现有哪些?
内存MongoDB替代Fongo方案推荐
MongoDB官方目前没有推出面向Java生态的原生纯Java嵌入式内存MongoDB实现,你所需要的官方长期支持特性,目前可通过基于官方原生MongoDB程序的衍生方案满足。
- 方案1:
Testcontainers启动官方MongoDB容器(首推)
这是当前工业界MongoDB单元测试的主流选型,直接调用MongoDB官方发布的镜像启动临时容器,可自由指定任意MongoDB版本,100%兼容所有原生API和特性,不存在模拟类实现的版本适配漏洞,镜像由MongoDB官方长期维护,完全匹配你对官方支持的需求。 - 方案2:
flapdoodle嵌入式MongoDB
可自动拉取对应系统的官方MongoDB二进制包,在本地进程内启动嵌入式实例,支持配置为全内存存储模式,启动速度比容器方案更快,同样完全兼容官方MongoDB全量特性,可适配最新的MongoDB驱动版本,社区维护状态稳定。 - 方案3:
bwaldvogel/mongo-java-server
如果你必须使用纯Java实现的模拟方案、不依赖外部二进制或容器,该项目最新版本已完成MongoDB 6.x版本驱动的适配,常规CRUD、索引、聚合等常用能力的支持比较完善,仅部分7.0+的新增高阶特性存在缺失,如果你的业务没有用到最新版特殊功能,完全可以满足使用需求,也可基于现有源码二次开发适配更高版本。
内容的提问来源于stack exchange,提问作者kSO
相关产品推荐
相关产品推荐

