Postman接口测试—全局变量/接口关联/加密/解密

399 篇文章 0 订阅
377 篇文章 3 订阅

全局变量和环境变量

全局变量:在postman全局生效的变量,全局唯一
环境变量:在特定环境下生效的变量,本环境内唯一

设置:

全局变量:

pm.globals.set("variable_key", "variable_value1");

环境变量:

pm.environment.set("variable_key", "variable_value2");

获取:

全局变量:

1、代码获取

var gl = pm.globals.get("variable_key");   // gl的值为variable_value1

2、请求参数获取 {{variable_key}}

环境变量:

1、代码获取

var en = pm.environment.get("variable_key");  // en的值为variable_value2

2、请求参数获取 {{variable_key}}

实现接口关联

1、json提取器

 
  1. // 把返回的字符串格式的数据转化为json格式

  2. var result = json.parse(responseBody);

  3. // 通过json对象取value值 result.token

  4. // 把取得的result设置为全局变量

  5. pm.globals.set("token", result.token);

  6. // 为全局变量后,可以通过---获取全量变量,实现关联

  7. {{token}} 或 pm.globals.get("token");

2、正则表达式提取器

  1. // match匹配

  2. var result = responseBody.match(new RegExp(' "token":"(.*?)" '));

  3. // 设置为全局变量 result[1] (下标为1的值为想要的token值)

  4. pm.globals.set("token", result[1]);

  5. // 为全局变量后,可以通过---获取全量变量,实现关联

  6. {{token}} 或 pm.globals.get("token");

加密、解密、内置/自定义动态参数

1、对称的加密方式(私钥加密)

Base64加密:

  1. // 转为UTF-8编码格式

  2. var username = CryptoJS.enc.utf-8.parse(''admin'');

  3. // 转为base64加密

  4. var base64_username = CryptoJS.enc.Base64.stringify(username );

  5. console.log(base64_username); // YWRtaW4K

Base64解密:

  1. // 先解密

  2. var username = CryptoJS.enc.Base64.parse(YWRtaW4K);

  3. // 解密后转为utf-8格式

  4. var new_username = username.tostring(CryptoJS.enc.utf-8);

  5. console.log(new_username); // admin

2、非对称式加密方式(双钥加密) :

RSA加密方式:

由一个密码生成公钥和私钥,公钥加密、私钥解密;私钥加密、公钥解密

3、只加密不解密

MD5 、SHA系列

  1. // MD5加密

  2. var password = CryptoJS.MD5("admin").tostring().toUpperCase(); // 选择32位大写

postman的内置动态参数:

  1. {{$timestamp}}  //自动生成当前时间的时间戳 (不方便做断言)

  2. {{$randomInt}}  //生成0-1000的随机数

  3. {{$guid}}   //生成一个GUID长字符串随机数

自定义参数:

自定义时间戳的参数

  1. // 获取当前系统时间

  2. var times = Date.now();

  3. // 把获取的时间设置为全局变量

  4. pm.globals.set("times", times); // 使用{{times}}即可

动态参数断言:

在postman的tests页签,不能通过{{}}方式获取全局变量,只能通过以下方式获取

①获取全局变量的方式,拼接 pm.globals.get(“times”)
②globals[“times”]
③globals.times

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的软件测试八股文,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值