当前位置: 首页 > news >正文

jmeter学习(4)提取器

同线程组https://blog.csdn.net/vikeyyyy/article/details/80437530

不同线程组

在JMeter中,正则表达式提取的参数可以跨线程组使用。 通过使用Beanshell后置处理器和属性设置函数,可以将提取的参数设置为全局变量,从而在多个线程组之间共享这些参数。

https://mp.weixin.qq.com/s/4X_WCeVWDkiXXX_YWlPnDg

1)正则表达式提取

 引用名称(Reference Name):Jmeter变量的名称,存储提取的结果;即下个请求需要引用的值、字段、变量名(例子中我提取的是SOCIAL_NO)
正则表达式(Regular Expression):使用正则表达式解析响应结果,“()”表示提取字符串中的部分值,请不要使用“||”,除非你本身需要匹配这个字符。

模板:代表从正则表达式结果引用的样式,其实结果是一组,而不是一个。$0$代表这一组结果的全部,$1$代表这一组结果的第1个,以此类推;$1$$2$代表该正则表达式一组结果中的第1个和第2个,俩结果挨在一起中间没有间隔;$3$,$4$代表该正则表达式一组结果中的第3个和第4个,俩结果间有一个逗号相连。
匹配数字:0代表正则表达式结果组中随机,1代表全部。
缺省值:当引用不对时显示传递的信息,通常写一个ERROR。

表达式注意空格!!!

2)json提取

位置:在线程组中,则位置随意,保证接受参数的请求在获取参数请求后面就行;在获取请求下

3)beanshell 提取

jmeter后置处理器之BeanShell PostProcessor - qiaoli - 博客园 (cnblogs.com)

jmeter BeanShell 后置处理器 - 三只松鼠 - 博客园 (cnblogs.com)

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;String response = prev.getResponseDataAsString();
log.info("~~~~~~~~~~~~~~~~~~~打印响应报文1"+ response);
//System.out.println("response:"+response)
JSONObject jso = JSON.parseObject(response);
log.info("~~~~~~~~~~~~~~~~~~~打印响应报文2"+jso);
JSONObject data =  jso.getJSONObject("data");
//String tmp1 = jso.getJson("data")
log.info("~~~~~~~~~~~~~~~~~~~打印响应报文3"+data);
JSONObject nlpResult =  data.getJSONObject("nlpResult");
log.info("~~~~~~~~~~~~~~~~~~~打印响应报文4"+ nlpResult);
String userQuery =nlpResult.getString("userQuery");
log.info("~~~~~~~~~~~~~~~~~~~打印响应报文5"+ userQuery);
vars.put("userQuerynew",userQuery)

用到fastjson 需要下载jar包,放到lib/ext

获取着将路径在test plan 加到classpath 

获取json   jsonObject.getJSONObject

获取数组  jsonObject.getJSONArray

获取string    jsonObject.getString

使用getString获取字符串值,getInt获取整数值,getDouble获取浮点数值,getBoolean获取布尔值等

http://www.lryc.cn/news/453367.html

相关文章:

  • 移动端的每日任务,golang后端数据库应该怎么设计
  • 1、Spring Boot 3.x 集成 Eureka Server/Client
  • Vue根实例、实例总结
  • 微服务架构:Spring Cloud的服务注册与发现、配置管理、服务网关、熔断器、分布式追踪
  • Spring Boot实现的大学生就业市场解决方案
  • Ubuntu上安装Git:简单步骤指南
  • 新闻推荐系统:Spring Boot的架构优势
  • 谷歌收录批量查询,谷歌收录批量查询的简单方法
  • HarmonyOS NEXT应用开发(一、打造最好用的网络通信模块组件)
  • Windows Ubuntu下搭建深度学习Pytorch训练框架与转换环境TensorRT
  • 如何选择合适的BI工具及集成
  • STM32的串行外设接口SPI
  • 函数重载
  • 单例模式:Python中的“独一无二”模式
  • C++和OpenGL实现3D游戏编程【连载12】——游戏中音效的使用
  • Hive数仓操作(八)
  • 【C++打怪之路Lv6】-- 内存管理
  • 408知识点自检(二)
  • C语言复习概要(二)
  • 小程序原生-利用setData()对不同类型的数据进行增删改
  • .NET Core 集成 MiniProfiler性能分析工具
  • 【JAVA开源】基于Vue和SpringBoot的旅游管理系统
  • 信息学奥赛一本通 1885:【14NOIP提高组】寻找道路 | 洛谷 P2296 [NOIP2014 提高组] 寻找道路
  • JVM 基础、GC 算法与 JProfiler 监控工具详解
  • nodejs安装及环境配置
  • 无人机电力巡检:点亮电力巡检新视野!
  • 详细介绍:API 和 SPI 的区别
  • 【面向对象】设计模式概念和分类
  • APK安装包arm64-v8a、armeabi-v7a、x86、x86_64如何区别?(2024年10月1日)
  • 【DataLoom】智能问数 - 自然语言与数据库交互