JMeter-Websocket接口自动化

结构图

在这里插入图片描述

1.准备

提前安装好JMeter Plugins Manager,后续用的到部分组件需要通过插件管理器安装,比如JSR断言、WebSocket Open Connection等组件

2.实现思路

2.1 通过HTTP请求获取token

token有过期时间,每次手动设置较为麻烦,故通过组件每次运行获取新的token

在这里插入图片描述

2.2 设置循环控制、断言变量

也有每次循环重置变量的作用,避免变量结果复用

在这里插入图片描述

2.3 建立WebSocket连接

WebSocket连接实在HTTP请求的基础上建立的,也就是在HTTP请求中高速对方,我要和你建立websocket连接,所以必要的HTTP请求头参数要带上

在这里插入图片描述
在这里插入图片描述

2.4 设置While循环控制读取CSV文件数据

2.4.1 csv文件设置,一般这样设置参数即可

在这里插入图片描述

变量名称:message,expected_steps

对应vars中的变量,变量值是根据分隔带JMeter自动处理的,变量名称 数量和分隔后的变量值 数量不对应也没影响,两者缺少的值会忽略或者设置为空值

2.5 设置websocket请求体数据

在这里插入图片描述

2.6 设置循环来保证接收到需要的响应(排除ping响应的影响)

在这里插入图片描述

JSR223后置处理脚本(从正确响应中拆解出需要的数据):

脚本是类似C语言的执行模式,方法在前,调用在后

import org.json.JSONObject;
import org.json.JSONArray;

// 解析read的响应数据为json格式
public JSONObject parseResponse(String response) {
   
   
	try {
   
   
		JSONObject jsonResponse = new JSONObject(response);
 		return jsonResponse;
    } catch (Exception e) {
   
   
		log.info("解析read结果失败: " + e.getMessage());
		return null;
    }
}

// 判断action是否为chat
public Boolean processAction(JSONObject jsonResponse) {
   
   
	try{
   
   
		if (jsonResponse.has("action") && jsonResp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值