爆肝整理,Postman接口测试-全局变量/接口关联/加密/解密(超细)

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

全局变量和环境变量

全局变量:在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}}

31

实现接口关联

1、json提取器

// 把返回的字符串格式的数据转化为json格式
var result = json.parse(responseBody)// 通过json对象取value值  result.token
// 把取得的result设置为全局变量pm.globals.set("token", result.token);   // 为全局变量后,可以通过---获取全量变量,实现关联
{{token}} 或 pm.globals.get("token");   

2、正则表达式提取器

// match匹配
var result = responseBody.match(new RegExp(' "token":"(.*?)" '));// 设置为全局变量  result[1]  (下标为1的值为想要的token值)
pm.globals.set("token", result[1]); // 为全局变量后,可以通过---获取全量变量,实现关联
{{token}} 或 pm.globals.get("token");  

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

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

// 转为UTF-8编码格式
var  username = CryptoJS.enc.utf-8.parse(''admin'');// 转为base64加密
var base64_username = CryptoJS.enc.Base64.stringify(username );console.log(base64_username)// YWRtaW4K

Base64解密:

// 先解密
var username = CryptoJS.enc.Base64.parse(YWRtaW4K);// 解密后转为utf-8格式
var new_username = username.tostring(CryptoJS.enc.utf-8);console.log(new_username)// admin

2、非对称式加密方式(双钥加密) :
RSA加密方式:
由一个密码生成公钥和私钥,公钥加密、私钥解密;私钥加密、公钥解密

3、只加密不解密
MD5 、SHA系列

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

postman的内置动态参数:

{{$timestamp}}  //自动生成当前时间的时间戳 (不方便做断言){{$randomInt}}  //生成0-1000的随机数 {{$guid}}   //生成一个GUID长字符串随机数

自定义参数:
自定义时间戳的参数

// 获取当前系统时间
var times = Date.now();//  把获取的时间设置为全局变量
pm.globals.set("times", times);      // 使用{{times}}即可

动态参数断言:
在postman的tests页签,不能通过{{}}方式获取全局变量,只能通过以下方式获取
①获取全局变量的方式,拼接 pm.globals.get(“times”)
②globals[“times”]
③globals.times

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有不断追求进步,才能超越自己的极限;只有坚持不懈的奋斗,才能实现辉煌的人生。不管前路如何崎岖,始终相信自己的力量,勇往直前,无坚不摧!

只有不断挑战自我、超越极限的勇气与毅力,才能将梦想化作现实,让奋斗的火焰燃烧于心,努力奋斗,才能创造属于自己的辉煌人生。

以梦为马,奋斗不辍;困难会消融于坚持,努力铸就辉煌;每一份付出都值得,成功属于拼搏的人。相信自己的力量,超越极限,成就不凡!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3916.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AJAX:宏任务与微任务

异步任务划分为了 宏任务:由浏览器环境执行的异步代码 微任务:由 JS 引擎环境执行的异步代码 宏任务和微任务具体划分: 左边表格是宏任务,右边是微任务 事件循环模型 /*** 目标:阅读并回答打印的执行顺序 */ console…

Spark编程-键值对RDD(K,V)创建及常用操作

简述 SparkRDD中可以包含任何类型的对象,在实际应用中,“键值对”是一种比较常见的RDD元素类型,分组和聚合操作中经常会用到,尤其是groupByKey和reduceByKey。 Spark操作中经常会用到“键值对RDD”(Pair RDD&a…

CSS样式

1.高度和宽度 .c1{height:300px;width:500px;}注意事项: 宽度支持百分比,高度不支持。行内标签:默认无效会计标签:默认有效(霸道,右侧区域空白,也不给你用) 2.块级和行内标签 块…

【Django学习】(十四)自定义action_router

之前我们的视图类可以继承GenericViewSet或者ModelViewSet,我们不用再自定义通用的action方法,但是有时候我们需要自定义action,我们该如何设计呢? 自定义action 1、手写视图逻辑 1.1、先在视图集里自定义action方法&#xff0…

GO语言泛型

set一般没什么不方便的 但是使用GET 需要使用类型断言,将取出来的数据转为预期数据, 空接口本身是一个装箱,会产生内存逃逸和多一部分空间. 于是1.17GO使用泛型. 泛型实现: 分析可执行文件后:发现 也就是泛型会为每个数据类型都生产一套代码,导致可执行文件大小增加,并且使用…

uni-app中a标签下载文件跳转后左上角默认返回键无法继续返回

1.首先使用的是onBackPress //跟onShow同级别 onBackPress(option){ uni.switchTab({ url:/pages/....... return true }) }发现其在uni默认头部中使用是可以的 但是h5使用了"navigationStyle":"custom"后手机默认的返回并不可以, 2.经过查询…

LCD-STM32液晶显示中英文-(5.字符编码)

目录 字符编码 字符编码说明参考网站 字符编码 ASCII编码 ASCII编码介绍 ASCII编码表 中文编码 1. GB2312标准 区位码 2. GBK编码 3. GB18030 各个标准的对比说明 4. Big5编码 字符编码 字符编码说明参考网站 字符编码及转换测试:导航菜单 - 千千秀字 …

智迪科技在创业板上市:市值约31亿元,谢伟明和黎柏松为实控人

7月17日,珠海市智迪科技股份有限公司(下称“智迪科技”,SZ:301503)在深圳证券交易所创业板上市。本次上市,智迪科技的发行价为31.59元/股,发行数量为2000万股,募资总额约为6.32亿元,…

onnx如何改变输入的维度

最近遇到一个难题,就算在用行为识别onnx转rknn的时候提示维度不对,因为行为识别模型是5维的。而rknn只支持4维。 我们先加载模型看一下它的input和node 可以看出模型的input[1]是一个全连接,因此我们可以直接修改他的input[0] input hel…

Kafka 入门到起飞系列 - 生产者发送消息流程解析

生产者通过producerRecord 对象封装消息主题、消息的value(内容)、timestamp(时间戳)等 生产者通过send()方法发送消息,send()方法会经过如下几步 1. 首先将消息交给拦截器(Interceptor)处理, 拦截器对生产者而言&…

静态数码管——FPGA

文章目录 前言一、数码管1、数码管简介2、共阴极数码管or共阳极数码管3、共阴极与共阳极的真值表 二、系统设计1、模块框图2、RTL视图 三、源码1、seg_led_static模块2、time_count模块3、top_seg_led_static(顶层文件) 四、效果五、总结六、参考资料 前言 环境: 1、…

数字化时代,智能文件工具让办公升级

无论是在办公室还是在学校,文件管理是我们日常工作中不可或缺的一环。传统的文件整理方式可能需要花费大量的时间和精力,而且常常容易出现混乱和遗漏。然而,随着科技的不断进步,我们现在有幸生活在一个数字化时代,因此…

如何正确有效的学习java前端(合集)

大量阅读 我是一个劲头十足的读者。所以,我的第一个关于学习JavaScript的技巧就是关于阅读,这绝不是巧合。书籍和其他的资源(如文章)可以在很大程度上帮助你学习JavaScript。通过实践学习,书籍是我学习新学科最喜欢的方式。在学习JavaScript的…

测试用例(2)

项目管理工具 主要用tapd,jira少用 acp 敏捷项目管理证书 task:故事,一个故事有开始也有结束,那么在项目管理里面,会把每个任务按照一个task来看,那么这个task也可以叫story,具体指的就是任务有开始有结…

ChatGPT火热之下的冷思考

作为一款基于人工智能的自然语言处理(NLP)​​聊天机器人​​程序,ChatGPT通过大量来自互联网的文本进行训练,并使用深度学习和机器学习算法来理解用户的问题并提供准确的回答。并且,ChatGPT还内置了情感分析、关键字提取和实体识别等功能&am…

Beyond Compare 代码比较工具

一、下载 官网下载地址: https://www.scootersoftware.com/download.php 选择 Windows 系统,简体中文版本,点击下载。 下载完成 二、安装 步骤1:双击安装包 步骤2:进入安装向导,点击下一步 步骤3&a…

在LLM的支持下使游戏NPC具有记忆化的方法

问题 使用GPT这样的LLM去处理游戏中的NPC和玩家的对话是个很好的点子,那么如何处理记忆化的问题呢。 因为LLM的输入tokens是有限制的,所以伴随着问题的记忆context是有窗口大小限制的,将所有的记忆输入LLM并不现实。 所以这里看到了stanfo…

Zookeeper

作为分布式中间件,zookeeper有以下几个重要功能 服务注册服务监听 :观察者模式,有服务上线或下线可以感知,并进行响应回调处理服务拉取配置中心CP特性数据存储方式为标准的文件结构 安装zk需要java环境,可参考 linux…

面试中关于自动化测试的认识

目录 一、什么是自动化测试,自动化测试的优势是什么? 二、什么样的项目比较适合做自动化测试,什么样的不适合做自动化测试? 三、在制定自动化测试计划的时候一般要考虑哪些点? 四、编写自动化脚本时的一些规范&…

怎么给pdf文件加密?pdf文档如何加密

在数字化时代,保护个人和机密信息的重要性越来越受到关注。PDF(Portable Document Format)是一种广泛使用的文件格式,用于共享和存储各种类型的文档。然而,由于其易于编辑和复制的特性,保护PDF文件中的敏感…