zoukankan      html  css  js  c++  java
  • Jmeter 接口测试之MD5加密函数(函数助手篇)

    转自:https://blog.csdn.net/hhyangel372/article/details/81571058

    本文给大家介绍一下如何使用Jmeter自带的函数对常量和变量进行简单的加密处理,废话少说,里面开讲。

    使用Jmeter的前提条件:
    1.对应Jmeter版本的最新JDK下载,地址http://www.oracle.com/technetwork/java/javase/downloads/index.html
    2.下载jdk后,解压安装。(注意记住安装路径)
    3.配置环境变量,这里就不多说了,请速看百度教程 https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
    nice~你可以开始虐待Jmeter了
    下载Jmeter 4.0版本
    下载地址:http://jmeter.apache.org/download_jmeter.cgi

    解压下载的jmeter压缩文件,打开文件夹,进入bin目录,找到jmeter.bat文件,双击打开(有时候需要右键以管理员身份运行)

    刚刚安装完,你是不是奇怪怎么是英文版的?没关系,下面教你永久汉化。
    首先,在Jmeter的安装目录下的bin目录中找到 jmeter.properties这个文件,用文本编辑器打开。
    然后在#language=en的下一行增加一段:
    language=zh_CN

    另外,新版本默认是黑色界面,需要改外观颜色的可以在选项中任意切换

    函数助手(函数生成器)
    在jmeter界面点击 选项-》函数助手对话框,在弹框上选择MD5 ,可以生成一个函数模板。(常量加密)如图:

    开始脚本编写
    1.新建一个线程组,然后在线程组添加一个前置处理器BeanShell PreProcessor

    输入如下代码,例如:

    String sendTime = "${__time(yyyyMMddHHmmssSSS,)}"; //生成时间戳

    String random = "${__Random(1,1000,Snum)}"; //生成一个随机数

    String str = sendTime+";" + random + ";" + "key=123abc"; //拼接需要加密的字符串

    vars.put("sendTime",sendTime.toString()); //把生成的时间戳提供给beanshell外部组件引用

    vars.put("random",random); //把生成的随机数提供给beanshell外部组件引用

    vars.put("test",str); //把拼接的需要加密的字符串提供给beanshell外部组件引用
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11


    2.添加一个Debug Sampler,目的为了在beanshell外部完成MD5加密,目前暂没办法在beanshell里面使用MD5函数完成对变量的加密。(其中code为加密后提供引用的变量名)


    3.再次添加一个前置处理器BeanShell PreProcessor ,并在里面输入代码:

    String getCode = vars.get("code"); //从beanshell外部的Debug Sampler控件获取变量

    vars.put("mycode",getCode.toUpperCase()); //把加密后的MD5值转换成32位大写
    1
    2
    3
    4
    如图:

    3.在线程组添加一个HTTP请求,增加beanshell所有处理的变量作为请求参数。(以百度get请求为例)

    4.添加一个监听器,运行脚本,然后查看请求的传参。


    好了,介绍完了。这是一种最笨的办法,大神请笑着飘过。除了这种方法之外,另外还可以使用引用外部加密方法或者运用Jmeter自带的DigestUtils等更快捷的方法来实现MD5加密。
    ---------------------
    作者:hhyangel372
    来源:CSDN
    原文:https://blog.csdn.net/hhyangel372/article/details/81571058
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    Spring Cloud Hystrix Dashboard的使用 5.1.3
    Spring Cloud Hystrix 服务容错保护 5.1
    Spring Cloud Ribbon 客户端负载均衡 4.3
    Spring Cloud 如何实现服务间的调用 4.2.3
    hadoop3.1集成yarn ha
    hadoop3.1 hdfs的api使用
    hadoop3.1 ha高可用部署
    hadoop3.1 分布式集群部署
    hadoop3.1伪分布式部署
    KVM(八)使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机
  • 原文地址:https://www.cnblogs.com/lgqboke/p/10815343.html
Copyright © 2011-2022 走看看