jmeter 接口测试 签名_jmeter 压测签名算法

概述

接到上级通知,需要配合第三方供应商,对他们的合同签署流程进行一次压测。听起来很简单,但是中间涉及到的东西很多

业务流程

这个第三方的签署流程大致如下

1.登录获取 token

2.获取当前时间戳

3.对合同 pdf 进行 base64 转码

4.转码过的合同写到 body 里

5.根据 token,时间戳,body,以及我们的私钥,通过算法生成一个 sign 签名

6.sign 计算之后,body 里面的 base64 会再一次转码

7.将 token,时间戳,私钥,sign 签名作为头部信息,和二次转码的 body 一起传参

大致如下图

678d31b21f3e1b81c642f35589f0d762.png

技术难点

1.token 是动态的

2.时间戳是动态的

3.合同 pdf 转码之后太长,没有办法直接贴到 jmeter 的 body 里面,贴进去就彻底卡死

4.由于上面的几个参数都是动态,导致生成的 sign 也是动态的,随时在变

5.同一份合同只能签署一次,也就意味着如果想做压测,只能手动传不同的合同,不停地改 sign

解决方案

写 java 方法,实现以下功能

1.调接口自动获取 token

2.自动获取当前时间戳

3.读取本地文件的转码 body

4.通过 body,时间戳,token 生成 sign,然后将这三组参数分列存到本地文件。如果有多份 pdf 文件,就生成多组。如下所示

| sign | time | body |

| -------- | -------- |

| 1 | 2 | 3 |

5.jmeter 做参数化,并发去读取这三行参数

大致思路就是这些

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值