Postman高级应用——串行传参和动态传参详解
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件
用Postman做接口测试的时候,要把多条用例一起执行,就需要把用例连接起来,一次性执行
目录
使用的接口是微信公众号开发文档里面的接口,详细请看开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
首先需要获取到接口测试号,开始开发>接口测试号申请>获得appID和appsecret,位置为:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421137522
其次获取access_token
接口调用说明:
https请求方式: GET,

串行传参
举例:先获取到access_token值,然后再查看已创建的标签
1.提取接口返回值
在获取access_token的接口中,Tests下输入如下代码:
let json = JSON.parse(responseBody);//声明一个变量json,将JSON返回Body里面的值解析并给变量json
tests["a"] = json.expires_in ===7200;//设置一个断言
pm.globals.set("token", json.access_token);//获取json里面的access_token的值给token,运行一次就更新一次,并将token值设置为全局变量
操作如下图所示:

2.将提取到的返回值作为下一个接口的入参(查看已创建的标签)
接口调用说明,详见:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837
http请求方式:GET(请使用https协议)
https://api.weixin.qq.com/cgi-bin/tags/get?access_token=ACCESS_TOKEN
此处的access_token值就为上一步提取到的值,因为access_token值只能用2小时,为了避免麻烦,所以设置为全局变量为{{token}}
操作如下图所示:

运行一次便自动添加,设置为全局变量后,每一次的token值都会发生改变,如下图所示:

将这两个接口用例保存到同一文件夹下,并运行,如下图所示:


运行后的结果如下图所示:

动态传参
做自动化测试时,有些接口不适合把参数写死,所以就需要动态传递参数
动态传参有三种实现方式:
1.Postman有以下内建变量,适合一次性使用
实现方式一:


③{{$randomInt}}//0-1000的随机整数
产生0-1000的随机整数,可用于自动化用户名操作,操作如下图所示:

实现方式二:
和串行传参方式一样,此处不再复述
实现方式三:
因此,存为环境变量,是在Pre-request Script里写代码,如下图所示:

两种格式都可惜,任选其一即可,代码如下所示:
postman.setGlobalVariable("value","test"+(parseInt (Math.random()*100)));//*100是指只取0~99之间的随机值
pm.globals.set("value", "test"+(parseInt (Math.random()*100)));
Postman高级应用——串行传参和动态传参详解的更多相关文章
- Postman 串行传参和动态传参详解
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件 用Postman做接口测试的时候,要把多条用例一起执行,就需要把用例连接起来,一次性执行 目录 串行传参 动态传参 使用 ...
- MySQL锁(表锁,行锁,共享锁,排它锁,间隙锁)使用详解
锁,在现实生活中是为我们想要隐藏于外界所使用的一种工具.在计算机中,是协调多个进程或县城并发访问某一资源的一种机制.在数据库当中,除了传统的计算资源(CPU.RAM.I/O等等)的争用之外,数据也是一 ...
- React中使用 react-router-dom 路由传参的三种方式详解【含V5.x、V6.x】!!!
路由传值的三种方式(v5.x) params参数 //路由链接(携带参数): <Link to='/demo/test/tom/18'}>详情</Link> //或 <L ...
- HTTP请求行、请求头、请求体详解
HTTP 请求头各参数具体含义 Header 解释 示例Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/htmlAccept-Charset 浏览器可以接 ...
- HTTP请求行、请求头、请求体详解(转)
转自 https://blog.csdn.net/u010256388/article/details/68491509/ HTTP请求报文解剖 HTTP请求报文由3部分组成(请求行+请求头+ ...
- 通过 Git 上传代码到 GitHub 必要操作详解
目录 Git 介绍 起步 下载 配置 准备 在 GitHub 上创建 SSH Key 提交 修改代码 更多信息 Git 欢迎来到 Git 的学习. 介绍 首先先了解一下 Git. Git,是一个开源的 ...
- 【校招面试 之 网络】第3题 HTTP请求行、请求头、请求体详解
1.HTTP请求报文解剖 HTTP请求报文由3部分组成(请求行+请求头+请求体): 下面是一个实际的请求报文: ①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE.HEA ...
- Git上传到码云及其常见问题详解
1.git init 初始化 2.git remote origin add https://gitee.com/su_yong_qing/SyqSystem.git 这里注意把链接替换为自己的仓库 ...
- php 文件上传$_FILES中error返回值详解
用PHP上传文件时,我们会用程序去监听浏览器发送过来的文件信息,首先会通 过$_FILES[fieldName]['error']的不同数值来判断此欲上传的文件状态是否正常.$_FILES[field ...
随机推荐
- IIS并发连接数和数据库连接池
一.数据库连接池 1.报错: 超时时间已到.超时时间已到,但是尚未从池中获取连接.出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小. 2.问题分析: 问题的原因是与数据库的连接没有显示关 ...
- 收藏:Win32消息机制
Dos的过程驱动与Windows的事件驱动 在讲本程序的消息循环之前,我想先谈一下Dos与Windows驱动机制的区别: DOS程序主要使用顺序的,过程驱动的程序设计方法.顺序的,过程驱动的程序有一个 ...
- SSM数据库数据导出excel
首先,这是我对自己的需求而使用的逻辑,若有可以完美的地方方便告诉下小白. apache的poi MAVEN <dependency> <groupId>org.apache.p ...
- 解决PHP curl https时error 77(Problem with reading the SSL CA cert (path? access rights?))
服务器环境为CentOS,php-fpm,使用curl一个https站时失败,打开curl_error,捕获错误:Problem with reading the SSL CA cert (path? ...
- 10.29训练赛第一场B题
题目大意:有n个队伍之间比赛,每两个队伍之间都有一场比赛,因此一共有n(n-1) / 2场比赛,但是这里丢失了一场比赛的记录,现在让你通过n(n-1) /2 -1场仍然存在的比赛记录来判断丢失的那条比 ...
- 第9月第6天 push pop动画 生成器模式(BUILDER)
1. https://github.com/MichaelHuyp/QQNews 2.生成器模式(BUILDER) class MazeBuilder { public: virtual void B ...
- imperva 更改agent的注册密码
imperva agent 在注册到网关的时候显示账号密码错误 如下图 这是一个数据库审计的设备由于当初最开始实施的时候并不是我安装的,所以账号密码我也不清楚,客户留的账号密码也不确定.因此导致账号密 ...
- java Socket和ServerSocket多线程编程
这是在一本java教材上看到的,做了点修改.具体本教材记不清楚了,Sorry.放在这里,只是让自己需要的时候能够容易找到. 程序分两部分,服务端和客户端.先把服务端运行起来,在运行客户端.整个过程就是 ...
- 解决spring boot JavaMailSender部分收件人错误导致发送失败的问题
使用spring boot通常使用spring-boot-starter-mail进行邮件的发送.当进行邮件群发的话,如果一个收件人的地址错误,会导致所有邮件都发送失败.因此我们需要在邮件发送失败的时 ...
- java 捕获所有异常
1.) 通过捕获异常类型的基类Exception就可以处理所有类型的异常.(事实上还有其它的基类,但Exception是同编程活动相关的基类) 2.)因为Exception是与编程有关的所有异常类的基 ...