JMeter中BeanShell Sampler

BeanShell是一种轻量级的脚本语言,纯java编写。

在jmeter中可以使用BeanShell Sampler编写脚本。

常用内置变量有3个:

  1. log 

    用于在jmeter.log中打印日志,可以打印字符串、变量

    log.info(“hello world”);

  2. vars

    用于存取jmeter线程变量,通常用于存取字符串内容,也可以存取对象

    vars.get()

    String mykey = vars.get(“keyname”);     —–获取线程变量名为keyname的值,并保存在mykey中

    String cookie11 = vars.get(“COOKIE_JSESSIONID”);

    JMeter中BeanShell Sampler

    vars.put()

    vars.put(“keyname”, “value”);   —–把value保存到jmeter线程变量keyname中

      vars.put(“fcy”, “测试人员”);

       JMeter中BeanShell Sampler

线程组–添加–Sampler–Debug Sampler,运行,通过结果树查看Debug Sampler,可以看到所有保存的变量

        JMeter中BeanShell Sampler

      JMeter中BeanShell Sampler

    保存到变量中,就是为了后续会使用这个变量:fcy = vars.get(“fcy”),或者使用 fcy = “${fcy}” 

    JMeter中BeanShell Sampler

    

    注意:对于fcy = “${fcy}”这种使用方法,变量可以这么使用,属性就不可以了。

    属性只能使用props.get(),或者_P函数,或者_property函数。

    JMeter中BeanShell Sampler

3. props

    存取jmeter属性,参数中的key和value均是字符串形式

    ymd = props.get(“START.YMD”);   获取属性START.YMD的值(脚本启动日期)

    JMeter中BeanShell Sampler

    props.put(“PROP1”, “1234”);

    把1234存入全局属性PROP1中

    注意:对于属性变量(全局变量),一般来说重启jmeter才能生效,使用props之后,最好重启jmeter。

    JMeter中BeanShell Sampler

    取用属性tom

    JMeter中BeanShell Sampler

    

线程组–添加–Sampler–Debug Sampler,运行,通过结果树查看Debug Sampler,可以看到所有保存的属性

        JMeter中BeanShell Sampler

     JMeter中BeanShell Sampler

          

4. 线程变量和属性的区别:

    线程变量是局部变量;属性是全局变量。

    对于属性变量(全局变量),一般来说重启jmeter才能生效,使用props之后,最好重启jmeter。

原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/193905.html

(0)
上一篇 2021年11月15日
下一篇 2021年11月15日

相关推荐

发表回复

登录后才能评论