接口自动化测试框架中动态参数接口,加密接口,签名接口你们是怎么处理的?
动态参数:可通过热加载形式(在代码执行过中自动去yaml里面执行外部的函数)
接口测试加密解密简介:
对称加密(私钥加密,只有一个密钥)AES,DES,BASE64 特点是:加密和解密有相同的密钥
非对称加密(私钥加密)RSA
主流不解密算法MD5,SHA,HmacSHA
接口签名SIGN详解
二、非对称加密:(双钥加密)RSA
有公钥和私钥两个密钥。公钥加密,私钥解密,私钥加密,公钥解密
Postman本身不支持这种加密方式,需要引入外部js文件
三、只加密不解密,MD5,SHA,HmacSHA
MD5:var md5_str=CryptoJS.MD5(“admin”).toString();默认情况是32位小写
Console.log(md5_str)
SHA:var sha_str=CryptoJS.SHA224(“admin”).toString();
HmacSHA哈希运算消息验证加密算法:var hmac_sha=CryptoJS.HmacSHA(“admin”,“密钥“).toString();
测试过程中都是加密不解密,前端后端开发对数据加密后进行加密数据对比
四、Sign签名(自定义加密方式),比混合加密更加严格
1.首先先获取到所有的参数(params和body)
2.把所有参数组合成一个字典
3.自定义一个根据key的ACSII进行升序排列的算法,把所有的参数和值进行升序排序
4.获取一个订单号随机
5.获取一个当前的时间戳
6.把订单号参数之前和时间戳加到参数之后
7.把最终的参数进行加密(混合)处理,生成sign
8.把sign签名在请求头里面传给后端。
Sign签名生命周期一般是1~3分钟
这是我整理的《2024最新Python自动化测试全套教程》,以及配套的接口文档/项目实战【网盘资源】,需要的朋友可以下方视频的置顶评论获取。肯定会给你带来帮助和方向。
【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)