gpt4 book ai didi

java - 测试 Jersey 客户端包装器

转载 作者:行者123 更新时间:2023-12-01 13:52:15 24 4
gpt4 key购买 nike

我正在尝试为使用 Jersey Client 发出请求的 API 客户端编写测试。

我想伪造某个服务器响应以返回预先捕获的 json 字符串。

例如。

client().resource("/recommendations").queryParam("username", karan").get(Recommendation.class)

应该根据我存储在文件中的 json 字符串返回适当的类。

我该如何伪造呢?或者我是否必须实例化一个假服务器来返回实际的 json,并让 Jersey 客户端完成它的工作?

谢谢

最佳答案

一种流行的解决方案是使用类似 EasyMock 的测试框架或Mockito创建一个模拟 Jersey 客户端,它需要特定的方法调用并返回预定义的数据(例如 json)。然后将模拟注入(inject) API 客户端以代替真正的 Jersey 客户端。

一般来说,您还可以通过自己创建模拟来避免使用框架,即子类化客户端并覆盖您期望调用的方法,以返回预定义的数据。然后将您的模拟作为构造函数参数传递到 API 客户端。您是否证明框架的合理性取决于您期望需要多少模拟,这部分取决于您拥有多少外部依赖项。

关于java - 测试 Jersey 客户端包装器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19877642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com