gpt4 book ai didi

java - Jersey 客户端将数据发送到 String

转载 作者:行者123 更新时间:2023-12-02 05:18:05 24 4
gpt4 key购买 nike

我正在使用 Jersey 为 REST 客户端构建一些 JUnit 测试,因此我需要将数据的副本发送到服务器以在 JUnit 中运行一些测试。

目前我的客户调用:

Invocation invocation = serviceWebTarget.request(MediaType.APPLICATION_JSON).
buildPut(Entity.json((QARecord) valuesList.get(0)));
Response response = invocation.invoke();

在两次调用之间,QARecord 对象被序列化为 JSON 并发送到服务器,但我找不到访问它的方法。通过调试代码,我发现调用或响应中没有包含转换后的 JSON 文本的变量。

如何将发送的数据放入字符串或文件中,以便我的 JUnit 测试检查已发送的内容?

最佳答案

据我了解,您想检查客户端到底将作为请求发送到服务器的内容,对吗?如果是,您的单元测试到底是什么样子?

例如 Jersey 提供 JerseyTest类是测试客户端代码的基础。

简而言之,此类测试将运行特殊的测试容器,该容器能够在内部执行您的处理程序。通过将其与 Mockito 结合/或自己创建自己的处理程序,您可以在测试结束时(当客户端收到响应时)验证它们作为客户端请求“捕获”的内容。除此之外,它使您不仅可以检查客户端代码发送到服务器的内容,还可以通过模拟各种响应(成功或异常)来检查客户端的行为。

如果您只想获取客户端真正发送到服务器的内容,您可以编写 jersey 客户端过滤器并从那里获取请求正文。 Filters and Interceptors

关于java - Jersey 客户端将数据发送到 String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20094401/

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