JMeter BeanShell 获取 HTTP Request 中的 Name
场景:添加 JMeter log 输出,想输入自定义请求的名称
// 获取 response body
prev.getResponseDataAsString();
// 获取 HTTP Request 插件里面的 Name
prev.getSampleLabel()
补充知识点:
JMeter prev对象核心方法详解
(适用于BeanShell/JSR223脚本环境,prev即SampleResult
对象)
一、基础信息获取方法
// 请求基本信息
prev.getSampleLabel() // 获取请求显示名称,如:"HTTP Get User"
prev.getSampler().getName()// 底层采样器名称,如:"HTTP Request"
prev.getThreadName() // 线程组名称,如:"Thread Group 1-1" // 时间维度数据
prev.getTime() // 请求总耗时(毫秒)
prev.getStartTime() // 请求开始时间戳(毫秒)
prev.getEndTime() // 请求结束时间戳(毫秒)
二、响应数据处理方法
// 文本型响应
prev.getResponseDataAsString() // 获取响应正文文本
prev.getResponseHeaders() // 获取完整响应头 // 二进制响应
prev.getResponseData() // 获取byte[]格式响应数据 // 状态码验证
prev.getResponseCode() // HTTP状态码,如:"200"
prev.isResponseCodeOK() // 状态码是否2xx(返回boolean)
三、高级调试方法
// 断言与错误判断
prev.isSuccessful() // 请求是否成功(包含断言结果)
prev.getAssertionResults()// 获取断言失败信息数组 // 数据提取
prev.getLatency() // 网络延迟时间(毫秒)
prev.getConnectTime() // TCP连接建立耗时(毫秒)
四、典型使用场景示例
// 场景1:记录异常请求详情
if (!prev.isSuccessful()) {
errorLog = "失败请求:" + prev.getSampleLabel()
+ " | 状态码:" + prev.getResponseCode()
+ " | 错误信息:" + prev.getResponseMessage()
vars.put("ERROR_LOG", errorLog)
} // 场景2:计算响应时间占比
def connectPercent = (prev.getConnectTime()/prev.getTime())*100
log.info("TCP连接时间占比:" + connectPercent + "%")
五、关键注意事项
- 作用域限制
- 仅在
PostProcessor
/断言
等后置处理器中有效 - 前置处理器(PreProcessor)中不可用
- 性能建议
- 避免在高并发下频繁调用
getResponseDataAsString() (我拒绝你的建议)
- 大数据响应建议改用
prev.getResponseData().length
获取字节大小
- 替代方案
- JMeter 5.0+推荐使用JSR223+Groovy替代BeanShell
// Groovy等效写法
def responseCode = prev.getResponseCode()
JMeter BeanShell 获取 HTTP Request 中的 Name的更多相关文章
- 使用JavaScript获取url(request)中的参数
这次是使用JavaScript来获取url(request)中的参数 在日常页面编写的过程中为了方便操作在<script>中通过使用window.location.href="要 ...
- js获取url(request)中的参数
index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&...... 静态html文件js读取url参数,根据获取html的参数值控制htm ...
- JMETER - BEANSHELL获取响应结果
获取响应结果 添加后置处理器 //获取获取请求的返回值 String response = prev.getResponseDataAsString(); //日志打印获取请求的返回值 log ...
- 获取请求Requst中访问请求的客户端IP
获取请求Request中访问请求的客户端IP /*获取请求客户端的IP地址*/ public static String getIpAddress(HttpServletRequest request ...
- Jmeter BeanShell 从数据库中获取数据并创建一个requesBody
一.前言 在测试接口的时候常常会使用到数据库中的数据,当要使用大量的数据时,仅仅使用数据库查询是不够的.还需要使用自动化让操作更简便. 下面以一个简单的例子阐述一下如何使用beanShell让代码更简 ...
- jmeter beanshell 从文件中获取随机参数
loadruner 参数化有个功能,可以设置在脚本每次出现参数时,自动更换参数值.在做jmeter自动化测试过程中,同一个请求中出现多个参数值,如一个接口可以添加n个信息的请求 [ { "n ...
- 通过BeanShell获取UUID并将参数传递给Jmeter
有些HTTPS请求报文的报文体中包含由客户端生成的UUID,在用Jmeter做接口自动化测试的时候,因为越过了客户端,直接向服务器端发送报文,所以,需要在Jmeter中通过beanshell获取UUI ...
- JSP userBean setProperty直接从request中获取参数
JSP userBean setProperty直接从request中获取参数: form表单Jsp: <%@ page language="java" import=&qu ...
- 一个利用pojo类从前端页面request中获取参数的小框架~
写之前不知道Spring已经实现这样的功能,所以傻傻的写了这个东西! 实现原理挺有趣的在此记录一下.从去年十月参加java开发以来自己终于有了点小进步. 好开心. 解决问题(详解):前端form表单提 ...
- java获取request中的参数、java解析URL问号后的参数
java获取request中的参数.java解析URL问号后的参数.有时候我们需要从request中获取参数,或者获取拼接在Url后面的参数,有时候一个一个去拿有点麻烦,一起拿出来放在一个map里面需 ...
随机推荐
- 推荐一个C#轻量级矢量图形库
推荐一个轻量级矢量图形库,可用于生成 PDF.SVG.PNG等. 01 项目简介 VectSharp 是一个功能强大的 C# 库,专门用于创建矢量图形,包括文本,不依赖任何第三方,支持跨平台运行,包括 ...
- Qt/C++离线地图的加载和交互/可以离线使用/百度和天地图离线/支持手机上运行
一.前言说明 在地图应用中,有很多时候是需要断网环境中离线使用的,一般会采用两种做法,一种是只下载好离线瓦片地图,然后根据不同的缩放和经纬度坐标绘制瓦片.这种方式优点是任何地图都支持,只需要拿到瓦片即 ...
- Qt编写安防视频监控系统39-onvif图片参数
一.前言 通过onvif来调整图片的Brightness(亮度).ColorSaturation(色彩饱和度).Contrast(饱和度)这三个参数,可以实时观测到监控画面对应的变化,比如讲亮度Bri ...
- Qt编写地图综合应用21-路径规划
一.前言 近期重新将这个地图综合应用进行大幅度的改进更新升级,包括使用示例也做了非常多的改进和调整,其中就包括路径规划功能,之前只是调用了百度地图的JS交互接口,根据起始点坐标经纬度和结束点坐标经纬度 ...
- vue引入element-ui插件 “export ‘default‘ (imported as ‘Vue‘) was not found in ‘vue‘
注意:出现该问题的原因主要是使用的Vue版本与Element-UI的版本不匹配. Vue.Vue-cli与Element-UI之间版本的正确的匹配关系是: Vue库版本 Vue-cli库版本 Elem ...
- 记录一次线上服务OOM排查
外面,阳光明媚,一切正好. 就在我欢天喜地准备迎来愉快的双休时,忽然之间,天塌了. 刚上线一小时的服务内存异常OOM了! 老实说,在我印象里OOM问题只存在于网上案例中,练习编码时常两年半,还是第一次 ...
- 在 Vercel 部署随机图 API
在本文中,将详细介绍如何在 Vercel 平台上部署一个具有分类功能的随机图片 API.通过这个 API,用户可以根据不同的分类获取随机图片链接,并且还可以从所有分类中随机获取一张图片. 项目结构 首 ...
- DateTimeExtensions:一个轻量C#的开源DateTime扩展方法库
推荐一个专门为System.DateTime编写的扩展方法库. 01 项目简介 该项目主要是为System.DateTime和System.DateTimeOffset的编写的扩展方法,包括自然日期差 ...
- Solution -「POI 2013」LAB-Maze
\(\mathscr{Description}\) Link. 构造一个边平行与坐标轴, 顶点是整点, 相邻边互相垂直, 且逆时针遍历顶点时转向 (向左或向右) 符合给定字符串的不自交多边形. ...
- Solution -「NOI 2017」「洛谷 P3825」游戏
\(\mathscr{Description}\) Link. 给大家看个乐子: link, 懒得概括题意啦. \(\mathscr{Solution}\) 对于没有 X 的情况, 显然可 ...