Jmeter-Beanshell内置对象和脚本开发

Beanshell的理解:

1.Beanshell 是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性;2.BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法;
3.BeanShell可以执行标准Java语句和表达式,以及另外自身的一些脚本命令和语法。

 

Jmeter中包含的Beanshell组件:

1.Beanshell取样器

2.Beanshell定时器

3.Beanshell前置处理器--------主要处理加密

4.Beanshell后置处理器--------主要处理解密、全局变量等

5.Beanshell断言

6.Beanshell监听

 

Beanshell常用内置对象(变量):

1.log变量:打印信息到jmeter.log

使用方法:log.info("----message---");

2.vars:操作jmeter线程组的局部变量

vars.get(String key),从jmeter中获得变量值
vars.put(String key, String value),数据存到jmeter变量中

3.props:该变量引用jmeter的配置信息,可以获取jmeter的属性,跟vars不同的是,props对象的key只能是字符串类型
   props.get(String key)   获取jmeter.properties中的属性值
   props.put(String key, String value)  设置jmeter.properties中的属性值

4.prev:获取前面Sampler返回的信息,相当于一个后置处理器,获取当前取样器的响应结果
   getResponseDataAsString(),获取响应信息
   getResponseCode(),获取响应Code

5.ctx:该变量引用了当前线程的上下文,不经常使用,这边不具体介绍

 

Beanshell实现不同线程组之间数据传递(跨线程组变量):

1.通过json或者正则提取器提取A接口的返回结果,比如token值,取变量名为get_token

2.添加Beanshell后置处理器,将返回结果设置为全局变量

在Beanshell后置处理器里面添加如下代码:${__setProperty(new_token,${get_token},)}

这里是把全局变量的值赋值给new_token变量

3.使用全局变量 ${__P(new_token,)}

 

Beanshell引入外部文件(Java,jar,class)

1.导入Java文件

source("Java文件路径");

2.导入jar文件(jar文件放置在jmeter/lib/ext/下面)

import  packageName.*;

3.导入class文件

addClassPath("class文件路径");

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值