zoukankan      html  css  js  c++  java
  • Jmeter之Bean shell使用(一)

    一、什么是Bean Shell

    • BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法;
    • BeanShell是一种松散类型的脚本语言(这点和JS类似);
    • BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。
    • BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。

    官网:http://www.BeanShell.org/

    二、Jmeter有哪些Bean Shell

    • 定时器:  BeanShell Timer

    • 前置处理器:BeanShell PreProcessor

    • 采样器:  BeanShell Sampler

    • 后置处理器:BeanShell PostProcessor

    • 断言:   BeanShell断言

    • 监听器:  BeanShell Listener

    三、BeanShell的用法

     在此介绍下BeanShell PreProcessor的用法,其它的beahshell可以类推。在此我们使用beahshell调用自己写的工具类,工具类实现了密码的加、解密功能:

    1.在eclipse写好代码,然后把该类打成jar包(在类上点击右键->Export->jar file)或者下载commons-codec-1.11.jar

    2.把jar包放到jmeter目录apache-jmeter-2.13libext下

    3.在测试计划中,添加此jar包

    4.打开jmeter,新增一个BeanShell Sampler,再添加一个http sampler(调用登录接口)

    5.在BeanShell Sampler中导入我们的jar包,调用里面的加、解密码方法,把结果保存在jmeter变量中,下面两个方法是beanshell中我们最常用到的:

    • vars.put(String key,String value):,将数据存到jmeter变量中
    • vars.get(String paramStr):获得变量值

    //导入jar包
    import org.apache.commons.codec.digest.DigestUtils;
    
    //定义需要加密的参数并将其进行拼接
    String parm="123456153452415";
    //调用MD5hex方法生成最终的加密串
    String mxd=DigestUtils.md5Hex(parm);
    //将生成的加密串赋值给变量mxd,这样可以便于后续的使用
    vars.put("mxd",mxd);

    6.把加密后的密码存到jmeter变量中,然后在http sampler中就可以通过${mxd}进行使用了:

     

    7.执行脚本

    http请求

    Debug Sampler响应数据

  • 相关阅读:
    SSM整合——实现书籍的增删改查
    [web]获取用户当前所在城市
    [mysql]pymysql插入500万数据
    [Flask] 01 ORM方法列表
    [少儿编程] 03-龟兔赛跑(下)
    [少儿编程] 02-龟兔赛跑(上)
    [少儿编程] 00-入门课程大纲
    [少儿编程] 01-少儿编程环境搭建
    [Linux] Centos7 部署django项目
    [Linux] centos7 安装Mariadb
  • 原文地址:https://www.cnblogs.com/sunny-sl/p/7717027.html
Copyright © 2011-2022 走看看