小编BKA*_*BKA的帖子

如何在spring-boot中使用resttemplate模拟调用另一个服务的服务?

各位专家下午好,

我有一个要求,我将调用 3 个 REST API 的顺序调用作为单个客户端调用 GET /offers 的一部分,以检索百货商店不同通道中每种产品的可用报价,如下所示

  1. 获取百货商店的所有过道/aisels
  2. 获取通道 /aisles/{aisleID}/products 中的所有产品
  3. 获取产品 /product/{productId/offers 的所有报价

    @Service使用 RestTemplate 交换方法在我的类中执行此操作:

    ResponseEntity aisles=restTemplate.exchange(url, HttpMethod.GET, requestEntity, Aisles.class);

aisleId然后循环检索每个产品并调用第二个 API 来获取产品

ResponseEntity<Products> products= restTemplate.exchange(url,
                    HttpMethod.GET, requestEntity, Products.class);
Run Code Online (Sandbox Code Playgroud)

productId然后循环检索每个并调用第三个 API 来获取 Offers

最后整理所有回复,将报价列表发送给客户。

现在,我对用于编写 JUnit 的 mockito 框架很陌生。我的服务类有一个名为retrieveAllOffers() 的方法,其中有如上所述的 3 个交换方法。

我想知道如何在 Junit 中模拟这 3 个调用才能获得成功的响应场景。

非常感谢您的帮助。

junit mockito spring-boot-test

3
推荐指数
1
解决办法
6397
查看次数

标签 统计

junit ×1

mockito ×1

spring-boot-test ×1