我最近开发了一些需要从中进行外部 API 调用的 Verticle。为了优化代码,我将调用 API 的代码移到了一个常见的 Helper 类中。我还将 Vertx 实例从 Verticle 传递给 Helper 类。我现在正在尝试为 Helper 类编写 Junit 测试用例,它看起来像下面的工作代码。
public class ServiceExecutionHelper{
public Promise<String> executeService(String requestURI, JsonObject input, MultiMap headers, Vertx vertx){
Promise<String> promise = Promise.promise();
WebClient client = WebClient.create(vertx);
client.postAbs(requestURI).timeout(60000).putHeaders(headers)
.sendJsonObject(input, ar -> {
if (ar.succeeded()) {
HttpResponse<Buffer> response = ar.result();
JsonObject serviceRespone = new JsonObject(response.bodyAsString());
JsonArray responseData = serviceRespone.getJsonArray("response_data");
if(responseData != null){
promise.complete("promise_completed");
}else{
promise.fail("promise_failed");
}
}
}
return promise;
}
}
谁能指导我如何为上述代码编写测试用例?