无法在JMeter中使用websocket采样器登录

问题描述 投票:0回答:1

首先,我在 fiddler 中记录了流量,并尝试登录所有采样器都是 http 请求采样器的地方,但事实并非如此。但在查看结果树中是这样的

http请求3:{“negotiateVersion”:1,“connectionId”:“NRb_1qElNVM4HbeHirpOvQ”,“connectionToken”:“X8NRLicmYXHs7bV9mWsqRA”,“availableTransports”:[{“transport”:“WebSockets”,“transferFormats”:[“Text” ,"Binary"]},{"transport":"ServerSentEvents","transferFormats":["Text"]},{"transport":"LongPolling","transferFormats":["Text","Binary"]} ]}

http请求4: 无法在连接中更改传输方式

这是http请求4的路径

“/_blazor?id=Mwb6bAF5K79ifIuhLGNDWQ”

正如您在路径中看到的,有一个要关联的ID,但是在http请求3的响应中没有ID,一个“Connectionid”和一个“connectiontoken”,那么我将与哪个值关联?

但是,这是HTTP请求4的标头管理器:

Pragma 无缓存 缓存控制无缓存 用户代理 Mozilla/5.0(Windows NT 10.0;Win64;x64) AppleWebKit/537.36(KHTML,如 Gecko) Chrome/120.0.0.0 Safari/537.36 接受语言 en-US,en “升级:websocket” 来源http://172.16.22.62:7010 Sec-WebSocket-版本 13 接受编码 gzip、deflate “Sec-WebSocket-Key:lXf82G8p9tSCTH6FqB9LyA==” Sec-WebSocket-Extensions permessage-deflate; client_max_window_bits

如你所见,有升级:websocket

我已经安装了“peter Dornboosh”的 websocket 采样器。虽然但是正如您所意识到的,我不太清楚应该使用哪个 websocket 采样器?我应该用 websocket 采样器替换 HTTP 请求 4 还是需要替换所有 HTTP 请求。另一件事是,如果我使用 websocket 采样器,我是否必须关联?

我正在尝试加载测试“登录”。谢谢大家

websocket jmeter load-testing jmeter-plugins
1个回答
0
投票

我的期望是你需要使用:

  • HTTP 请求使用HTTP 协议
  • 的请求的采样器
  • 使用 WebSocket 协议的请求的相关 WebSocket 采样器。关于“使用哪些采样器” - 这取决于 WebSocket 流量的情况,如果没有看到 Fiddler 的完整网络请求转储,我们无法为您提供帮助。

确保:

您可以使用相同的Fiddler来比较JMeter和真实浏览器的网络占用,您可以将Fiddler设置为JMeter的代理,Fiddler将捕获JMeter的请求,一旦JMeter开始发送相同的请求 - 您的登录将是成功了。

© www.soinside.com 2019 - 2024. All rights reserved.