java.util.concurrent.TimeoutException 在 运行 Vertx 4 样本 Junit 5 测试时捕获

java.util.concurrent.TimeoutException caught when running the Vertx 4 sample Junit 5 test

当运行由start.vertx.io生成的样本测试并得到以下信息。

java.util.concurrent.TimeoutException: 
The test execution timed out. Make sure your asynchronous code includes calls to 
either VertxTestContext#completeNow(), VertxTestContext#failNow() or Checkpoint#flag()

我为它添加了一个 GitHub 操作。

https://github.com/hantsy/vertx-sandbox/runs/1535205549

@BeforeEach 本身失败了。

@ExtendWith(VertxExtension.class)
public class TestMainVerticle {

    @BeforeEach
    void deploy_verticle(Vertx vertx, VertxTestContext testContext) {
        vertx.deployVerticle(new MainVerticle(), testContext.succeeding(id -> testContext.completeNow()));
    }

    @Test
    void verticle_deployed(Vertx vertx, VertxTestContext testContext) throws Throwable {
        testContext.completeNow();
    }
}

我是 Vertx 平台的新手,从 Vertx 的内部方面确实不确定原因。从异常信息中,我无​​法在我的代码中找到原因。

在我的 start(Promise<Void> startPromise) 中添加了一个 startPromise.complete() 来解决这个问题。