我有一个JMeter测试,我正在使用循环来查明某些条件是否属实。我想(并且可以)在发送服务器发送事件(SSE)的资源上使用请求,而不是轮询。它应该工作的方式是,SSE线程被启动,而另一个线程被启动,它执行最终将导致发送特定事件的请求。如果收到该事件,则应继续处理。
也许图形化更清晰。我当前的脚本看起来像这样:
ThreadGroup
|
+ request 1
+ request 2
...
+ request N
+ Transaction controller
| |
| + While controller
| + polling request
|
+ request N+1
我想要这样的东西
ThreadGroup
|
+ request 1
+ request 2
...
+ <help needed here>
| |
| + event thread
| | + request SSE
| | + onEvent x: y = true
| + action thread
| + request N
| + While y=false wait
+ request N+1
这可能吗?如果是这样的话?如果没有,我可以创建一个采样器来执行此操作吗?有什么指针吗?
问候,
弗里索
我想你必须实现自己的课程。
首先,作为SSE的客户,你应该看看这个:
第二步是实现一个扩展此类的自定义采样器:
并使用此GUI:
现在是最复杂的部分(也许我们应该创建一个github项目来讨论这个实现,并且一旦完成将其贡献给核心JMeter项目:-)):
这些只是最初的想法,需要更多的工作。
在考虑为jmeter创建新的sse插件后,我找到了gatling.io,它支持SSE gatling.io