Vert.x假/嵌入式mongo

时间:2019-03-28 12:33:42

标签: mongodb cucumber vert.x functional-testing embedded-database

我有一项服务,我需要在其中执行功能测试(黄瓜),以进行一些休息。

现在在之前的春季项目中,我曾经使用过fongo,但我猜想它不适用于Vert.x

现在要进行黄瓜测试,如何实现假蒙哥/嵌入式蒙哥 还是他们的另一个图书馆。我也尝试过vertx-embedded-mongo-db,但是那里缺少好的文档。

1 个答案:

答案 0 :(得分:1)

我也有类似的要求,我通过使用vertx-embedded-mongodb

达到了要求

我所做的工作是vertx-embedded-mongodb垂直开始,然后我的verticle开始监听mongo端口27018

DeploymentOptions embeddedMongoOptions = new DeploymentOptions()
  .setWorker(true)
  .setConfig(new JsonObject().put("port", 27018).put("version", "3.4.3"));

vertx.rxDeployVerticle(EmbeddedMongoVerticle.class.getName(), embeddedMongoOptions)
.map(id -> {
    return new DeploymentOptions()
            .setWorker(true)
            .setConfig(myApplicationCongig);
})
.flatMap(options -> vertx.rxDeployVerticle(MyApp.class.getName(), options))
.subscribe();

只需确保将您的应用程序mongo配置为在测试环境中侦听27018而不是27017。

上述解决方案也仅适用于Vert.x 3.x.xvertx-embedded-mongodb不再支持4.x.x