• Jmeter中Beanshell调用java代码的3种方式


    1:BeanShell控制界面介绍

     

    • Reset bsh.Interpreter before each call 每次调用前重置bsh.Interpreter:可以选择True和False。如果此选项为True,则将为每个取样器重新创建解释器。
    • Parameters to be passed to BeanShell(=>String Parameters and String[] bsh.args)传递给BeanShell脚本的参数:参数存在以下变量中,Parameters:整个参数字符串作为一个变量Parameters,bsh.args:用空格分隔的字符串被保存到变量数组bsh.args
    • Script file 脚本文件:包含BeanShell脚本的文件名传给变量名FileName

    2:BeanShell常用变量

      log:日志对象,log.info("This is log info!");

      vars:变量对象(相当于Map对象)

              vars.get(key);

              vars.put(key, val);

              vars.putObject(“user”,new UserDto());

      props: 直接访问及修改Jmeter的属性对象

                 props.get("START.HMS"); 

                 props.get("START.YMD"); //获取属性 START.YMD 的值(脚本启动日期)

                 props.get("log_level.jmeter");

                 props.put("customProp","1234");

                 props.put("log_level.jmeter","ERROR");

      ctx: 上下文对象

      prev: 之前取样器的结果对象

      sampler: 当前取样器对象

    3:在jmeter BeanShell中可以自定义类和方法,也可以调用外部已有的java文件、class 文件、jar 包

    3.1 调用 java 文件

         source("D:\workspace\jmeter\Sign.java"); //指定目录

         或source("Sign.java");  //文件位于 jmeter/bin 目录下

         String sign= Sign.getSign("xx");

    3.2 调用 class 文件

           addClassPath("D:");  //可以是父级目录或者祖先级目录

           import com.Sign;

           String sign= Sign.getSign("xx");

    3.3 调用 jar 包

          需要在测试计划中导入 jar包,或者提前把jar包放入 jmeter/lib目录下并重启

           import com.Sign;

           String sign= Sign.getSign("xx");

  • 相关阅读:
    当import的模块内容发生变化时,对此模块进行重新加载(刷新)
    使用python的ctypes库实现内存的动态申请和释放
    【转载】实现博客园图片的可放大功能
    使用tqdm实现下载文件进度条
    pytest参数化的两种方式
    Jmeter之Bean shell使用-常用内置变量
    JMeter之Ramp-up Period(in seconds)说明
    Jmeter性能测试基础
    接口测试基础
    JMeter做http接口功能测试
  • 原文地址:https://www.cnblogs.com/crowbrother/p/16217329.html
Copyright © 2020-2023  润新知