使用Couchbase进行单元和集成测试

Mat*_*ana 5 java spring unit-testing couchbase spring-data-couchbase

我最近建立了一个使用Spring-Data-Couchbase的新项目,而我对如何在此处进行单元和集成测试完全感到困惑。

通常,使用JPA,我可以以某种方式模拟我的存储库(假设对于使用Spring的长沙发来说这是相似的),并且对于单元测试来说还可以,但是通常对于JPA,我连接一个内存数据库并具有完整的集成测试套件。有什么办法可以通过沙发床做到这一点?

另外,如果您不介意在此处提及任何提示,因为这是我的第一个主要NoSQL项目:)谢谢!

小智 3

不幸的是,Couchbase 不能在内存中运行。对于单元测试,您必须模拟 Couchbase 的 API。有一个 CouchbaseMock 项目可以促进这一点:https://github.com/couchbase/CouchbaseMock

还可以在启动测试之前使用跑步机。可能有一个 Maven 插件可以让您运行 Couchbase 或 Couchbase Docker 镜像。

  • 关于CouchbaseMock,您还可以看看它自己的测试:https://github.com/couchbase/CouchbaseMock/blob/master/src/test/java/org/couchbase/mock/client/ClientBaseTest.java - 其中显示模拟是如何实例化的以及(旧的)Java SDK 如何连接到它! (2认同)