jmeter--8.加密传输

这篇具有很好参考价值的文章主要介绍了jmeter--8.加密传输。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. Base64加密

2. MD5加密

3. SHA加密(sha1\sha\sha224\sha256\sha384\sha512)

4. RSA加密-公钥加密,私钥解密


1. Base64加密

1.1 在需要加密传输的接口下新增BeanShell 预处理程序,${username}可替换成value值,但是不利于参数化

import java.util.Base64;
//初始化一个Base64对象,调用encodeToString()方法
String Musername = Base64.getEncoder().encodeToString("${username}".getBytes("UTF-8"));
String Mpassword = Base64.getEncoder().encodeToString("${password}".getBytes("UTF-8"));
log.info(Musername);
log.info(Mpassword);
//设置变量
vars.put("Musername",Musername);
vars.put("Mpassword",Mpassword);

2. MD5加密

2.1 使用函数助手进行加密

${__digest(MD5,${username},,,)}

jmeter--8.加密传输,测试工具,jmeter,学习,开发语言,java,测试用例,python

2.2 使用beanshell进行加密

在需要加密传输的接口下新增BeanShell 预处理程序

//导包
import org.apache.commons.codec.digest.DigestUtils;
//md5加密
String Musername = DigestUtils.md5Hex("${username}");
String Mpassword = DigestUtils.md5Hex("${password}");
//传值
vars.put("Musername",Musername);
vars.put("Mpassword",Mpassword);

3. SHA加密(sha1\sha\sha224\sha256\sha384\sha512)

3.1 使用函数助手进行加密--注意函数助手不支持sha-3加密

${__digest(sha-1,${username},,,)}

jmeter--8.加密传输,测试工具,jmeter,学习,开发语言,java,测试用例,python

2.2 使用beanshell进行加密

import org.apache.commons.codec.digest.DigestUtils;
String username = DigestUtils.sha512Hex("${username}");
String password = DigestUtils.sha512Hex("${password}");
log.info("username加密结果为:"+username);
log.info("password加密结果为:"+password);

4. RSA加密-公钥加密,私钥解密

需要引入python脚本进行加密--公钥根据接口需求获取(可以直接问开发),这里只是一个示例

#通过公钥加密
def rsa_jiami():
    # 接收cmd命令里面的参数
    parse = argparse.ArgumentParser()
    parse.add_argument("-t", "--ticket", action="append")
    args = parse.parse_args()
    ticket = args.ticket
    #print("ticket:%s" % ticket)
    #导入公钥
    public_key_str = "-----BEGIN RSA PUBLIC KEY-----\nMIGJAoGBALO7UPE26anTGHND2Q54zYYPusDx+tbO1Yia7zoxpZediw+Baea7aFZC\nJ+ZvWd5ZBTopuWvb8hNkY24eBHcXN0pU32WjsH9REp1kXhxbndnw+u3diaoUFqVc\n66xl+LXEo1Y9oDWfkGCir2JnN0aieUiPlHDLhmc+LII/ZDspITKDAgMBAAE=\n-----END RSA PUBLIC KEY-----"
    pubkey = rsa.PublicKey.load_pkcs1(public_key_str.encode())

    #加密用户名
    username_str = rsa.encrypt(str(ticket[0]).encode("utf-8"),pubkey)
    #把二进制转化成字符串格式
    username_miwen = base64.b64encode(username_str).decode("utf-8")
    print(username_miwen)
    print("测试")
    # 加密密码
    password_str = rsa.encrypt(str(ticket[1]).encode("utf-8"), pubkey)
    # 把二进制转化成字符串格式
    passsword_miwen = base64.b64encode(password_str).decode("utf-8")
    print(passsword_miwen)

if __name__ == '__main__':
    rsa_jiami()

beanshell调用

注意这里需要安装rsa,不然会引用失败。在控制台安装【pip install rsa】文章来源地址https://www.toymoban.com/news/detail-799056.html

import java.io.BufferedReader;  //导包
import java.io.InputStreamReader;

String command = "cmd /c python D:/study/course/Jmeter/RSAjiami.py -t ${username} -t ${password}";  //组建cmd命令并执行py文件
Runtime rt = Runtime.getRuntime(); //初始化一个运行时对象
Process pr = rt.exec(command); //通过运行时对象运行cmd命令。

pr.waitFor();  //运行时等待

//调用pr进程对象获取到它的输入流。读取pr文件流的内容,并且保存到reponse_data
BufferedReader br = new BufferedReader(new InputStreamReader(pr.getInputStream()));
StringBuilder response = new StringBuilder();
String line = "";
while((line=br.readLine())!=null){
    response.append(line);
};
String reponse_data = response.toString();
br.close();

log.info("reponse_data:"+reponse_data);//打印返回的内容

//获取用户名和密码
String[] miwen = reponse_data.split("测试");
log.info(miwen[0]);
log.info(miwen[1]);
vars.put("Musername",miwen[0]);
vars.put("Mpassword",miwen[1]);

到了这里,关于jmeter--8.加密传输的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 压力测试与测试工具jmeter的介绍

    目录 一、性能指标 二、jmeter (一)JMeter 安装 (二)JMeter 压测示例 1、添加线程组 2、添加 HTTP 请求  3、添加监听器 4、启动压测查看分析结果 (三)JMeter Address Already in use 错误解决   压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测

    2024年02月14日
    浏览(46)
  • 测试工具jmeter使用

    一、概述 官网:Apache JMeter - Download Apache JMeter 二、安装 1、下载 Windows版本下载zip,Linux版本下载tgz,一般下载Binaries(Source含有源码)。 2、安装 下载后无需安装,解压后即可使用。 3、配置环境变量: jmeter环境变量配置如下: 1)新增JMETER_HOME变量,注意:变量值为你下载后

    2024年02月05日
    浏览(43)
  • Jmeter-压力测试工具

    1s内发送大量请求,模拟高QPS,用以测试网站能承受的压力有多大 Jmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。 可以Apache Jmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi 或者直接用这个提供好的旧版本: 链接:https://pan.baidu.com

    2024年02月13日
    浏览(56)
  • JMeter性能测试工具详解

    1、JMeter简介 Meter 是轻量级的接口性能测试工具,同时具备一定程度的接口自动化测试能力。 JMeter 支持多协议,其中较适合测试使用公有协议(如 HTTP、JDBC 等)的服务或模块,特别适合 B/S 结构的后台性能系统。 JMeter 有大量第三方插件,也可以比较方便的编写适合自己使用

    2023年04月08日
    浏览(54)
  • 初识性能测试工具Jmeter

    (1)Jmeter下载地址:https://jmeter.apache.org/download_jmeter.cgi; (2)Java运行环境下载地址:https://www.oracle.com/java/technologies/downloads/; (3)JAVA尽量配置到环境变量中去; (4)Jmeter解压出来; (1)Windows的点击jmeter/bin/下的jmter.bat; (2)mac和linux点击jmeter.sh; (3)点击Options—

    2023年04月08日
    浏览(55)
  • 测试工具--JMeter的使用

    1、JMeter是什么      Apache组织使用Java开发的一款测试工具 2、功能 用于对服务器、网络或对象模拟巨大的负载 通过创建 带有断言的脚本 来验证程序是否能返回期望的结果 3、优点 开源免费,可以自己拓展jmeter的功能 跨平台,在不同平台上运行 支持多协议  http协议、tcp协

    2024年02月05日
    浏览(61)
  • 测试工具JMeter的使用

    目录 JMeter的安装配置 测试的性能指标 TPS 响应时长 并发连接 和 并发用户 CPU/内存/磁盘/网络 负载 性能测试实战流程 JMeter JMeter快速上手 GUI模式 运行 HTTP请求默认值 录制网站流量 模拟间隔时间 Cookie管理器 消息数据关联 变量 后置处理器 CSV 数据文件设置 断言 循环控制器 预

    2024年02月01日
    浏览(54)
  • JMeter测试工具设置中文

    在JMeter中,默认情况下是英文的,如果需要使用中文进行测试,则需要进行如下设置: 在JMeter运行时界面的“Options”菜单中,选择“Choose Language”,然后选择“中文(中国)”。此时JMeter界面的文字将会变为中文。 需要注意的是这个方法是 临时性 的,在下一次重新打开J

    2024年02月03日
    浏览(49)
  • 自动化测试工具之 Jmeter性能测试

    1.性能测试概念: 通过自动化测试工具模拟多种正常,峰值以及异常负载条件来对系统的各项性能指标进行测试 2.性能测试条件 系统基础功能测试验证完成 系统趋于稳定 3.性能测试基本流程 需求分析 (1)系统信息调研 (2)业务信息调研 (3)性能需求评估   判断是否进行

    2023年04月09日
    浏览(64)
  • 性能测试—Jmeter工具

    开源平台 :metersphere 1. 术语介绍 响应时间(Response time) :对请求作出响应所需要的时间。 在互联网上对于用户响应时间,有一个普遍的标准。 2/5/10秒 原则。 并发用户数(concurrent users) :在同一时间段内访问系统的用户数量。 吞吐量(Throughput) :单位时间内系统处理的客户请求

    2024年02月13日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包