在浦发银行的项目中,主机运维连接成功不做任何操作的场景中,用到了webSocket协议,但是脚本运行中出现webSocke Close报错--解决方案:在webSocket Open Connection下一步添加WebSocket Single Read Sampler,原因如下:jmeter加webscoket的步骤,open connection只是建立链接,read才会读到结果,webscoket Close得知道结果状态,才能关闭

添加WebSocket Single Read Sampler还是有报错,websocket关闭连接还是报错

报错原因:服务器发送了文本消息,没有读取这些消息,消息被缓冲,导致关闭的时候会首先读取这些文本消息返回错误。
解决:通过过滤文本消息的方式,智能关闭连接,jmeter提供了这个方式

灵感来源自下面文章:https://www.codenong.com/53865947/

JMeter WebSocket plugin - Close SignalR connection

我有一个网站使用Asp.NET Core SignalR从服务器动态加载数据。

我在此页面上使用JMeter进行功能测试。我使用1.2.1版中的WebSocket采样器插件来测试SignalR功能。

遵循有关如何将JMeter与WebSocket采样器插件一起使用的blazemeter教程之后,在尝试关闭SignalR连接时,总会出现错误。

我的JMeter采样器设置如下所示:

  • WebSocket打开连接
  • WebSocket请求-响应采样器
  • WebSocket单读采样器
  • WebSocket关闭

为了关闭连接,我使用了名为WebSocket Close的WebSocket采样器。该采样器允许提供Close status。

我试图提供不同的Close status代码。但是实际上没有确认所提供的代码,并且总是返回错误消息:

Response code: WebSocket error: unsuccesful close.

Response message: WebSocket error: received not a close frame, but Text frame with text ...

如何在JMeter中正确关闭此连接?


更新资料

我发现这取决于我使用多少个采样器。如果我在读采样器之前使用写采样器,则关闭似乎有效。喜欢:

  • WebSocket打开连接
  • WebSocket请求-响应采样器
  • WebSocket单读采样器
  • WebSocket单写采样器
  • WebSocket关闭

但是,如果我想拥有一个以上的读取采样器,它将无法正常工作。知道如何正确使用多重读取采样器吗?


更新2

我重新阅读了插件文档,并在此处检查了示例JMeter文件。

不幸的是,到目前为止,我还没有找到具有多个Read Samplers的更大样本。

  • 嗨,主席先生,能否让我知道您使用的是哪个Signalr版本以及.net的版本?我试图从我的asp.net核心Signalr服务器读取jmeter中的消息,但是即使在浏览器客户端中正确接收到消息,也无法收到任何消息,所以找不到我在做什么。我能够启动websocket连接,并使用写采样器通过套接字将消息写入服务器,但是只能检测到来自信号器服务器的ping消息(使用单个读取采样器),并且未检测到任何文本框架。你能帮我一下吗
  • 我使用浏览器的开发人员工具来了解网站发送和接收的内容。这样,我就可以构建想要的JMeter测试。
  • 您是否使用Single Read
    Sampler从服务器到jmeter客户端收到任何文本框架?我检查了使用提琴手到jmeter客户端和浏览器客户端的网络流量,发现服务器发送的文本帧没有到达jmeter客户端,但到达了浏览器客户端。我正在URL中发送信号发送程序connectionId以便随后写入服务器。除了connectionId之外,我是否还缺少其他东西?如果可以的话,您能否共享jmx文件(websocket采样器部分),否则您将采取什么步骤来建立信号器连接并从中读取?
  • 请创建您自己的Stackoverflow问题。我认为我们不应该滥用评论来解决您的问题。一旦您提出了问题,请告诉我,我会尽力为您提供帮助。
  • stackoverflow.com/questions/54122668/这是您所建议的问题

可能发生的情况是您的服务器发送了一些文本消息,而您的JMeter测试脚本尚未读取该消息。 这些消息被缓冲,当您关闭WebSocket连接时,"关闭采样器"首先读取这些文本消息之一并返回错误。

有一个更改请求,用于增强" Close Sampler"(关闭采样器),并带有忽略此类缓冲区结束消息的选项。 目前,您可以通过将文本框过滤器与封闭式采样器结合使用来实现相同的目的。 请参阅示例目录中的"使用filter sample.jmx智能关闭"示例。

关于JMeter WebSocket插件:JMeter WebSocket插件-关闭SignalR连接--webSocket Close报错的更多相关文章

  1. eclipse连接远程Hadoop报错,Caused by: java.io.IOException: 远程主机强迫关闭了一个现有的连接。

    eclipse连接远程Hadoop报错,Caused by: java.io.IOException: 远程主机强迫关闭了一个现有的连接.全部报错信息如下: Exception in thread & ...

  2. jmeter连接mysql数据库报错Cannot create PoolableConnectionFactory (Could not create connection to database server.)

    今天在学习jmeter的jdbc取样器,发现在配置完JDBC Connection Configuration和JDBC Request后,点击运行.在查看结果树中显示响应数据: Cannot cre ...

  3. 【WPF】弹窗定位、弹窗关闭后再打开的报错

    需求:点击按钮,打开一个弹窗. // 获得窗体实例 Window window = openDesignViewModel.View as Window; // 这是使用了WAF框架 //Window ...

  4. Jmeter跨线程组获取token(彻底解决因格式token报错)

    将token设置为全局变量网上方式方法千千万,但是你就是获取token会失败,不是提示格式错误,就是提示无法获取token,没安装Jmeter的可以查看前两期教程,有详细介绍 在工作当中如果仅仅是一个 ...

  5. svn 卡死住,关闭后,用CleanUp报错解决

    一.问题描述: 经常用SVN的人都知道,有时候更新文件更新着更新一般,突然卡顿住,死在那边动都不动出现提示:svn cleanup failed–previous operation has not ...

  6. js插件设置innerHTML时,在IE8下报错“未知运行时错误”

    问题描述: 网站中使用了一个js插件,设置innerHTML时,在IE8下报错“未知运行时错误”: <div id=”divContainer”> <a name=”link”> ...

  7. react-native 框架升级 安卓第三方插件报错 Android resource linking failed

    亲自经历react-native从0.55升级到0.58的过程,有点坎坷,ios出现的问题还算不多,但是android这里,随着gradle和buildTool的使用升级,导致第三方插件出现各种问题, ...

  8. Extjs4---Cannot read property 'addCls' of null 或者 el is null 关于tab关闭后再打开不显示或者报错

    做后台管理系统时遇到的问题,关于tab关闭后再打开不显示,或者报错 我在新的tabpanel中加入了一个grid,当我关闭再次打开就会报错Cannot read property 'addCls' o ...

  9. mongodb之 非正常关闭启动报错处理

    Mongodb如果非正常关闭,直接启动会报错.查看日志文件. 处理: 需要做的是删除mongod.lock和WiredTiger.lock这两个lock文件,然后执行--repair,这里的mongo ...

  10. elasticsearch无故关闭,Log无报错

    可以看到图中的关闭log之前没有任务报错,这也让博主非常抓狂,这看着就像是人为关闭的,于是博主在群里问是不是有人动过该服务,确认没人关闭后,百度无果,社区上也没找到有关信息,最后灵光一闪,猜测是不是因 ...

随机推荐

  1. TensorRT基础笔记

    一,概述 TensorRT 是 NVIDIA 官方推出的基于 CUDA 和 cudnn 的高性能深度学习推理加速引擎,能够使深度学习模型在 GPU 上进行低延迟.高吞吐量的部署.采用 C++ 开发,并 ...

  2. JDK9对集合添加的优化-Debug追踪

    JDK9对集合添加的优化 通常,我们在代码中创建一个集合(例如,List或Set ),并直接用一些元素填充它.实例化集合,几add方法调用,使得代码重复. package A_Lian_one.dem ...

  3. 阿里云服务器中MySQL数据库被攻击

    前几天刚领了一个月的阿里云服务器玩,在里面装了MySQL,然后这几天找了个小项目练习着玩呢,就将表建在里面了. 刚访问添加员工还好好的,刚给员工分页查询呢 ,啪一下 ,很突然昂 ,就访问不了了 ,看控 ...

  4. 明解STM32—GPIO理论基础知识篇之基本结构

    ​ 一.前言 万物皆有源头,大家学习单片机的源头操作就是通过GPIO口点灯,GPIO作为STM32最基础的外设,也是大家最先接触的外设.当然,看似基础的GPIO,不仅仅是简单的设置好IO口,让灯亮起就 ...

  5. linux-各个目录下重要文件、用户、用户组

    1.⽹络不通排查流程 1. 确认⽹关地址是否通畅 2. 确认⽹卡配置是否正确 3. 确认⽹络管理服务是否关闭 systemctl stop NetworkManager systemctl disab ...

  6. c++ stl 详解 csp备考

    最近在准备csp认证考试,打算使用c++语言,以下是关于c++ stl库的内容: algorithm概览(作者:当格子衫爱上Helloworld) stl库详解(作者:c语言中文网) https:// ...

  7. vue + element-ui + vue-clipboard2 实现文字复制粘贴功能与提示

    1.在所在项目下安装插件 npm install vue-clipboard2 --save 2.在所在项目的index.js注入vue-clipboard2 import VueClipboard ...

  8. ubuntu安装ROBOWARE

    https://github.com/tonyrobotics/RoboWare/ https://blog.csdn.net/lixujie666/article/details/80139112 ...

  9. JZOJ 5451.Genocide

    题目 题解 对于 \(m=1\) 这档分 我们可以 \(dp\) 然后斜率优化 具体来说就是 \(f_i = f_j + \frac{(i-j)\times (i-j+1)}{2} + sum[j]- ...

  10. 达标式减量策略又一例证(STRASS研究)

    标签: 类风湿关节炎; T2T策略; TNF抑制剂; 药物减停; STRASS研究 达标式减量策略又一例证(STRASS研究): RA维持期个体化减停TNF拮抗剂是可能的 电邮发布日期: 2016年1 ...