JMeter第十讲_取样器_BeanShell Sampler 取样器

BeanShell是由java编写的,是一个轻量级的脚本语言,也相当于一个小巧免费的JAVA源码解释器,支持对象式的脚本语言特性,亦可嵌入到JAVA源代码中,能动态执行JAVA源代码并为其扩展了脚本语言的一些特性。
JMeter也是由java编写的,而java运行时需要先编译,然后才可以运行,而BeanShell是一款解释器,直接可能运行源代码。
Beanshell内置变量,Beanshell脚本中不用定义,可以直接使用的变量。

Beanshell常用的内置变量:
(1)log:打印日志,写入信息到jmeter.log文件,帮助调试脚本;
常用方法:    
    log.debu(“调试信息”)
    log.info(“响应状态码” + ResponseCode)    //log.info("打印usernamme变量值: "+ vars.get("usernamme")); //打印变量usernamme值
    log.warn(“警告信息”)
    log.error(“出错信息”)
(2)vars:操作jmeter变量,生成、更新、获取当前脚本的jmeter变量;(只能在同一线程组内传递);
常用方法:
        a) vars.get(String key):从jmeter中获取变量值;如,user是变量,vars.get("user");
        b) vars.put(String key,String value):数据存到jmeter变量中;
(3)props:操作jmeter属性,该变量引用了JMeter的配置信息,可以获取Jmeter的属性,它的使用方法与vars类似,但是只能put进去String类型的值,而不能是一个对象。对应于java.util.Properties。 (可在整个测试计划中跨线程组传递)
常用方法:
        a) props.get("START.HMS"); 可以获取JMeter中已经生成的属性----注:START.HMS为属性名,在文件jmeter.properties中定义 。
        b) props.put("PROP1","1234"); 可以创建和更新JMeter属性。
(4)ctx:获取当前线程上下文,可获取当前线程的请求信息和相应信息(可以获取http请求和响应的所有数据);
常用方法:    
    ctx.getVariables(“变量名”):获取变量值(同vars.get())。
    ctx.setVariables(“变量名”, “变量值”):设置变量(同vars.put())。
    ctx.getProperties(“属性名”):获取属性值(同props.get())。
    ctx.setProperties(“属性名”,“属性值”):设置属性(同props.put())。
    ctx.getPreviousResult():获取当前请求结果同(prev)。
    ctx.getCurrentSampler():获取当前采样器。
    ctx.getPreviousSampler():获取前一采样器。
    ctx.getThreadNum():获取线程数。
    ctx.getThreadGroup():获取线程组。
    ctx. getThread():获取当前线程。
    ctx.getEngine():获取引擎。
    ctx.isSamplingStarted():判断采样器是否启动。
    ctx.isRecording():判断是否开启录制。
    ctx.getSamplerContext():获取采样器山下文数据。
(5)prev:获取当前请求的结果,或者说是获取前面的sample返回的信息;
 常用方法:  
    a) getResponseDataAsString():获取响应信息
    b) getResponseCode() :获取响应code

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡均森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值