快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

jmeter学习指南之BeanshellSampler常用方法-创新互联

视频地址:http://edu.51cto.com/lecturer/4626073.html

成都创新互联专注于赵县企业网站建设,成都响应式网站建设公司,商城网站建设。赵县网站建设公司,为赵县等地区提供建站服务。全流程按需制作网站,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务

JMeter 中可以使用 Beanshell Sampler 编写一些简单的脚本,实现更多功能。


1、Beanshell
Beanshell 是一种轻量级的 Java 脚本,纯 Java 编写的,能够动态的执行标准 java 语法及一些扩展脚本语法,类似于 javaScript 和 perl。

2、内置变量
Beanshell Sampler 中除了可以使用标准 java 语法之外,还有一些定义好的变量,可以直接使用。

SampleResult
ResponseCode,
ResponseMessage
IsSuccess
Label
FileName
ctx
vars
props
log
下面我按使用频率,分别讲一下最常用的几种变量。

3、log
用于打印日志,最常用,也最简单;
打印在 jmeter.log 中,可以设置打印级别,可以打印字符串、变量等。
使用方法:

1、打印 info 形式的普通字符串日志:
log.info("hello world"); 输出 hello world

2、拼接字符串和变量 (其中 token 是 jmeter 局部变量):
log.info("hello world" + "${token}"); 输出 hello world 和 token 变量的拼接结果

3、打印自定义变量
str = "12345";
log.info(str); 输出 12345

4、打印 error 形式的普通字符串日志:
log.info("hihihi");
log.error("aaaaa");
输出的区别:
2018-12-27 19:05:13,158 INFO o.a.j.u.BeanShellTestElement: hihihi
2018-12-27 19:05:13,158 ERROR o.a.j.u.BeanShellTestElement: aaaaa

print() 打印日志
在 beanshell 中还可以使用 print() 函数来打印日志,输出字符串等信息;

print() 是在控制台中输出信息,log() 默认是在 jmeter.log 中输出信息。

4、vars
用于存取 jmeter 局部变量,很常用,一定要掌握;
通常用于存取字符串内容,也可以存取对象;
vars.get()
String mykey = vars.get("keyname"); 
获取变量名为 keyname 的值,并保存在 mykey 中。

vars.put()
vars.put("keyname","value");  
把变量 keyname(值为 value)保存到 jmeter 变量中。

vars.putObject("OBJname",new Object()); 
把一个对象 OBJname 保存到 jmeter 变量中

vars.remove()
vars.remove("keyname");
从 jmeter 变量中删除 keyname。

5、props
用于存取 jmeter 全局的静态变量;
其中的 key 和 value 均是字符串形式;
ymd = props.get("START.YMD");
获取属性 START.YMD 的值(脚本启动日期)。

props.put("PROP1","1234");
把 1234 存入全局属性 PROP1 中。

6、ctx
当前线程的上下文信息;
使用举例:

ctx.getCurrentSampler(); 获取当前 sampler 请求

ctx.getPreviousSampler(); 获取前一个 sampler 请求

ctx.getThreadNum(); 获取当前线程的序号,从 0 开始计数

ctx.getThread(); 获取当前线程

ctx.getThreadGroup(); 获取当前线程组

ctx.getProperties(); 获取所有属性

ctx.getVariables(); 获取当前线程的所有变量

7、SampleResult
SampleResult.setResponseData(data);
自定义响应数据。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享题目:jmeter学习指南之BeanshellSampler常用方法-创新互联
文章链接:http://6mz.cn/article/dhiico.html

其他资讯