JMeter中的WebSocket流仅针对一帧执行,我无法使用可用的jar加载测试连续流@https://bitbucket.org/pjtr/jmeter-websocket-samplers
Jmeter WebSocket jmx 当我尝试通过终端触发 WebSocket 请求时,它会传输输出/日志。但对于 JMeter,Websocket 仅针对一个框架运行。
使用端口 443 的 WSS 请求:感谢您回答问题。请您解答我的一些疑虑:我正在尝试对客户端持续监听 WebSocket 的场景进行负载测试。
1 Using a jar file I am able to continuously stream the data when I hit the java jar in the terminal. I can see the data flowing
2. Now I try to replicate the scenario in JMeter, the sampler acts like a request/response, where the connection is lost after the response.
3. Now if I set a loop in JMeter, it does not satisfy the purpose of streaming. It will act as multiple requests sent to the same channel.
循环是 WebSocket 流的唯一选择吗?
线程名称:线程组 1-1 示例开始:2017-04-27 17:21:40 IST 加载时间:1383 连接时间:0 延迟:0 字节大小:1065 已发送 字节:0 标头大小(以字节为单位):0 主体大小(以字节为单位):1065 示例 计数:1 错误计数:0 数据类型(“text”|“bin”|“”): 响应代码: 200 回复信息:【执行流程】 - 打开新连接 - 使用响应消息模式“” - 使用断开模式“” - 等待服务器连接 60000 毫秒 - WebSocket 连接已打开 - 连接已建立 - 等待消息 60000 毫秒 - 接收帧#1(15 字节);匹配的响应模式 - 收到消息#2(15 字节);匹配的响应模式 - 保持流媒体连接打开
[变量] - 消息数:2
[问题]
响应标头:
示例结果字段:内容类型:数据编码:UTF-8
根据您帖子中的文字,您正在使用
https://bitbucket.org/pjtr/jmeter-websocket-samplers,但您发布的日志记录不是来自该插件,而是来自 Maciej Zaleski 的插件....
我不是 100% 确定“负载测试连续流”的含义,但如果您的意思是服务器只是将帧推送到客户端,则可以使用以前的插件进行测试。只需使用“单读采样器”设置一个循环...
如果我在“循环”中保留“单读采样器”,是否有可能在循环迭代之间丢失一些消息,或者是否有某种缓冲/流传输来确保迭代之间消息不会丢失和返回在下一个“单读采样器”中阅读?
提前感谢您对此的帮助。
更新:
正如 Peter 对这个答案的评论所预期的那样,我们确实看到帧是从输入流中一个接一个地读取的,没有任何丢失。
但是,我们观察到:
PS:我无法将此添加为评论,所以很抱歉在这里发布查询。