美文网首页工作生活
JMeter脚本开发之BeanShell Sampler

JMeter脚本开发之BeanShell Sampler

作者: 猿二胖 | 来源:发表于2019-07-02 17:25 被阅读0次

    本文整理参考:https://www.cnblogs.com/puresoul/p/4949889.html

    一、简介

    BeanShell Sampler用来模拟向被测试系统发起请求。BeanShell 支持Java对象的调用,可以用来调用Java接口程序。

    二、配置
    1、引用包和依赖包路径配置

    引用包:测试脚本调用的被测试类所在的包
    依赖包:被测试类依赖的包

    • 方法一:在测试计划中导入,如下图所示:
    • 方法二:将引用包和依赖包放置在Jmeter默认的包加载路径下,即:%JMETER_HOME%/lib目录
    三、BeanShell 使用
    1、操作变量

    通过使用Bean shell 内置对象vars可以对变量进行存取操作

    vars.get("name") //从jmeter中获得变量值,这里的"name"是指变量的名称
    vars.put("key","value") //将数据存入jmeter变量中,"key"为变量名,"value"为对应的数值
    
    2、操作属性

    通过使用Beanshell内置对象props可以对属性进行存取操作

    props.get("propertiename")
    props.put("propertiename","value")
    
    3、自定义函数

    在BeanShell中,可以使用java语言自定义函数来处理特定的逻辑,结合BeanShell内置对象进行变量的存取,方便我们进行测试提高脚本灵活性。示例:

    • 在Test Plan 中添加一个变量:name = 张三
    • 新建BeanShell Sampler,并在Script写入如下指令:
    public static string test ()
    {
        vars.put("name","李四");
        return "success";
    }
    
    4、引用外部java文件或者class文件

    前提:java/class文件内容如下

    package test;
    public class Myclass
    {
        public int add (int a, int b)
        {
            return a + b;
        }
    }
    
    • 引入外部java文件
    source("D://filename.java");
    
    
    • 引入class文件
    //导入class文件
    addClassPath(D://");
    //导入类名
    import test.Myclass;
    
    5、引用外部jar包

    引用方法如上”配置“中所示。

    6、Bean Shell入参
    • Bean shell可以接收传入参数,如下图所示:
    • 参数可以通过bsh.args[]按顺序提取,序号开始为0
    • bean shell 提供了一个内置变量Parameters,来保存参数集合


      1.png
    2.png 3.png
    四、Bean Shell常用的内置变量

    Jmeter在它的BeanShell中内置了变量,用户可以通过这些变量与JMeter进行交互,主要的变量及其使用方法如下:

    • log:写入信息到jmeter.log文件
    log.info("this is a log info")
    
    • ctx:该有变量引用了当前线程的上下文
    • vars:操作jmeter变量,这个变量实际引用了JMeter线程中的局部变量容器(本质上是map),它是测试用例与beansell交互的桥梁
    • props:操作jmeter属性,该变量引用了jmeter的配置信息,可以获取jmeter的属性
    • prev:获取前面的sample返回的信息,常用方法:
    getResponseDataAsString();//获取响应信息
    getResponseCode(); 获取响应code
    

    相关文章

      网友评论

        本文标题:JMeter脚本开发之BeanShell Sampler

        本文链接:https://www.haomeiwen.com/subject/rxfthctx.html