getProperty方法声明public String getProperty(String key)
public String getProperty(String key, String defaultValue):当 key 不存在则返回默认值
功能用指定的key在此属性列表中搜索属性,如果在此属性列表中未找到该key,则接着递归检查默认属性列表及其默认值 。如果未找到属性,则此方法返回 null
timeFormat = props.getProperty("jmeter.save.saveservice.timestamp_format");log.info("timeFormat:"+ timeFormat);propsTest = props.getProperty("jmeter.save.saveservice.timestamp");log.info("propsTest:"+ propsTest);propsTest = props.getProperty("jmeter.save.saveservice.timestamp","温一壶清酒 博客园");log.info("propsTest:"+ propsTest);

文章插图
get方法声明public synchronized V get(Object key)
功能获取属性值,跟 getProperty 类似
pTimeFormat = props.get("jmeter.save.saveservice.timestamp_format");log.info("pTimeFormat:"+ pTimeFormat);pPropsTest = props.get("jmeter.save.saveservice.timestamp");log.info("pPropsTest:"+ pPropsTest);
setProperty方法声明public Object setProperty(String key,String value)功能设置属性值
props.setProperty("pName","温一壶清酒");propsName = props.getProperty("pName");log.info("propsName:"+ propsName);

文章插图
put方法声明public synchronized V put(Object key)
功能设置属性值,跟 setProperty 类似
props.put("pName","温一壶清酒");pPropsName = props.get("pName");log.info("pPropsName:"+ pPropsName);
propertyNames方法声明public Enumeration<?> propertyNames()功能返回属性列表中所有key的枚举,如果在主属性列表中未找到同名的key,则包括默认属性列表中不同的key
propsNames = props.propertyNames();propsNames.each{ log.info(it) }

文章插图
size方法声明public int size()
功能返回有多少个属性
pPropsCount = props.size();log.info("pPropsCount:"+ pPropsCount);

文章插图
remove方法声明public synchronized V remove(Object key)
功能删除一个变量,并返回变量的值,若变量不存在则返回 null
props.put("pName","温一壶清酒");rName = props.remove("pName");log.info("rName:"+ rName);rSex = props.remove("sex");log.info("rSex:"+ rSex);

文章插图
prevprev 提供对当前取样器结果的访问能力,映射 org.apache.jmeter.samplers 的 SampleResult 类官方文档: https://jmeter.apache.org/api/org/apache/jmeter/samplers/SampleResult.html
getResponseCode方法声明public String getResponseCode()
功能获取响应状态码
responseCode = prev.getResponseCode() ;log.info("responseCode:" + responseCode);2022-10-04 15:34:29,057 INFO o.a.j.u.BeanShellTestElement: responseCode:200
isResponseCodeOK方法声明public boolean isResponseCodeOK()功能判断响应状态码是否为OK对应的状态码(200),结果只有true和false
responseCodeBoolean = prev.isResponseCodeOK();log.info("responseCodeBoolean:" + responseCodeBoolean);2022-10-04 15:36:35,077 INFO o.a.j.u.BeanShellTestElement: responseCodeBoolean:true
getThreadName方法声明public String getThreadName()功能获取线程名
prevThreadName = prev.getThreadName();log.info("prevThreadName:" + prevThreadName);2022-10-04 15:39:17,955 INFO o.a.j.u.BeanShellTestElement: prevThreadName:prevThreadName
getResponseDataAsString方法声明public String getResponseDataAsString()功能获取String类型的响应结果
prevResponse = prev.getResponseDataAsString();log.info("prevResponse:" + prevResponse);
getStartTime获取请求开始时间getEndTime获取请求结束时间
getSamplerData获取请求内容
好了,以上就是平时经常用到的一些内置变量的方法,还有其他的方法,可以参考源码或官方文档 。
【Jmeter——BeanShell 内置变量vars、props、prev的使用】
推荐阅读
- Spring 深入——IoC 容器 01
- 面向对象的照妖镜——UML类图绘制指南
- PLAN 谣言检测——《Interpretable Rumor Detection in Microblogs by Attending to User Interactions》
- Linux命令系列之ls——原来最简单的ls这么复杂
- 谣言检测——《Debunking Rumors on Twitter with Tree Transformer》
- 一 CPS攻击案例——基于脉冲宽度调制PWM的无人机攻击
- 一篇文章带你掌握主流服务层框架——SpringMVC
- Linux命令系列之top——里面藏着很多鲜为人知的宝藏知识
- 2 Libgdx游戏开发——接水滴游戏实现
- 1 Libgdx游戏学习——环境配置及demo运行