14.JMeter - Bean shell相关了解


目录

1、JMeter中的BeanShell


1、JMeter中的BeanShell

  • 定时器,BeanShell Timer

  • 前置处理器,BeanShell PreProcessor

  • 取样器,BeanShell Sampler

  • 后置处理器,BeanShell PostProcessor

  • 断言,BeanShell 断言

  • 监听器,BeanShell Listener

  • BeanShell:

    • 一种脚本语言
    • 完全符合java语法的java脚本,且有自己的一些语法和方法

    • 属于松散类型的脚本语言,类似js

    • 但是逐渐被JSR所取代


2、BeanShell 界面

  • 注意,beanshell里面可以写java代码

  • 说明:

    • 1)Reset Bsh Interpreter before each call:是否重新构造Interpreter,其实就是是否重新初始化
    • 2)Parameters:Beanshell脚本中的变量初始化时指定值,接收变量与字符串数组,数组元素之间要用空格隔开

    • 3)Script File Name:指定运行的BeanShell脚本

    • 4)Script:直接编写BeanShell脚本,通过BeanShell可以访问:

      • ctx、vars、props、prev、sampler、log等对象


3、BeanShell前置处理器

  • 前置处理器会先于取样器执行


4、BeanShell 后置处理器

  • 注意,如果在控制器里面没有取样器

  • 但是你又添加了beanshell的后置处理器,或者前置处理器这些,是不会运行的,因为没有取样器


5、BeanShell可引用的对象

  • ctx【JMeterContext】

    • JMeter脚本上下文对象
    • JMeter上下文信息,可以从中得到线程数、线程号等信息

    • ctx.getVariables()

    • ctx.getThread()

    • ctx.getThreadGroup()

    • ctx.getTreadNum()

  • vars【JMeterVariables】

    • 变量对象
    • 获取JMeter中定义的变量,或者设置变量

    • vars.get(String key)

    • vars.put(String key, String value)

    • vars.put(String key, Object obj)

      • vars.getObject(String key), # Gets the value of a variable (not converted to String).

  • props【JMeterProperties】

    • 属性对象,可以在jmeter.properties中定义
    • 获取JMeter中的属性,或者设置属性

    • props.get("name");
    • props.put("name", "cang laoshi");

  • log

    • log日志对象
    • 可以通过log写对象

    • log.info()

    • log.error()

    • log.warn()

    • log.debug()

  • Label

    • 当前取样器的Label,标题
  • FileName

    • 脚本文件名称
  • args

    • 参数(Parameters 按空格分割成字符串数组)
  • Parameters

    • Parameters字段的参数
    • 参数,以字符串提示

  • bsh.args

    • 参数数组
  • IsSuccess

    • 取样器成功与否
  • SampleResult

    • 获取响应数据,响应码等信息
  • prev

    • 获取前一个响应数据,最近的取样器的取样结果
  • OUT

    • System.out对象,可以进行控制台输出
  • Sampler

    • 当前取样器
  • Response

    • 获取响应数据
  • Faillure

    • 用来设置断言成功与否,Boolean类型
  • FailureMessage

    • 用来设置失败信息

  • ResponseData

    • 获取响应数据

  • ResponseCode

    • 获取响应代码
  • ResponseMessage

    • 获取响应信息
  • ResponseHeaders

    • 响应头信息
  • SampleLabel

    • 取样器的Label信息
  • SamplerData

    • 发送给服务器的数据
  • 备注:

    • 可以通过官方文档查询相关的API文档

6、BeanShell示例

  • 示例:

    • 前置BeanShell设置一个字符串数组
    • BeanShell取样器对其进行排序

    • 后置BeanShell将其转为字符串

    • BeanShell断言进行判断

  • 备注:

    • BeanShell里面,log的方法只能打印字符串,如果是java对象,会报错!!!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值