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响应数据

  • 相关阅读:
    2014 年美国程序员薪资调查
    新加坡移民生活:想出都出不来了!
    mysql命令行参数
    甲骨文创始人埃里森的10大混蛋行为:曾翻微软垃圾堆
    为什么我要称自己为Javascript程序员
    原生JavaScript练习——弹出层
    Leetcode 344 Reverse String 字符串处理
    安装 Autoconf 2.69版
    Leetcode 28 Implement strStr()
    Leetcode 67 Add Binary 大数加法+字符串处理
  • 原文地址:https://www.cnblogs.com/sunny-sl/p/7717027.html
Copyright © 2011-2022 走看看