如何在JMeter中测试异步回调?


问题内容

我在我的API中使用WebHooks。因此,一旦处理了请求,我们的REST服务就会将响应发布回请求中发送的回调URL。

Client             Server
  |(request)         |
  |----------------->|     
  |<-----------------|     ||
  |        (response)|     ||
  |                  |    _||_ Time
  |        (callback)|    \  /
  |<-----------------|     \/
  |----------------->|
  |(response)        |
  |                  |

如何用JMeter进行压力测试?


问题答案:

如果是轮询问题,则取决于WebHook的实现-您可以只使用While控制器来等待循环中的回调。序列的整个持续时间可以使用交易控制器进行测量

如果回调来自服务器发送的事件,则可以使用JAX
RS
API

,该API提供SseEventSource类,该类可用于在JSR223
Sampler
Java
Request

sampler中等待服务器端事件,如异步的“压力/负载测试”中所述。使用JMeter的HTTP /
REST服务
文章