Postman使用教程之如何在不同接口之间传递数据

CINDY 0人评论 1201次浏览 插件实用方法教程
摘要 : Postman使用教程之如何在不同接口之间传递数据

为了更灵活地构造请求以及处理响应数据,postman提供了Pre-request-Script和Tests,在这两个标签中可以编写js代码辅助测试。之前学习了在发送请求的Tests标签如何添加断言以及postman中的环境变量,有了上述基础后,就可以继续学习如何在不同接口之间传递参数了,这一篇就主要说一说如何在Pre-request-Script和Tests标签中添加合适的脚本提取我们需要的数据。

Postman使用教程之如何在不同接口之间传递数据

收到response之后,可以在Tests标签中编写脚本,处理返回的数据
想象如下场景:假如测试2个接口,接口A负责生成地址信息,且返回一个地址流水号;接口B负责删除地址信息,且就是根据地址流水号还来删除,而且删除后,该地址流水号便无法再次使用。
这样的话我们在测试接口B时,每次都要提前准备一条可用的地址流水号,而且如果更换测试环境,就得重新造数据,用起来非常不方便。
基于此,可以考虑每次在测试接口B之前,都先调用接口A来生成一条地址流水号,然后把数据传给B,这样即使是更换数据库也能够灵活进行测试了,不需要再提前准备数据。

 1.提取接口A生成的地址流水号

首先该请求的响应内容如下,为响应为json格式的字符串

postman使用教程

在Tests标签中编写如下脚本
var JsonData = JSON.parse(responseBody);  //定义一个变量,并且将请求返回的内容赋给该变量
pm.environment.set("address_seq", JsonData.data.seq);  //定义一个环境变量address_seq,且把响应内容中的seq值赋给该变量
console.log(JsonData.data.seq);   //利用postman的console.log()来查看环境边境变量的值
Postman使用教程之如何在不同接口之间传递数据

发送这个请求,可以在console中查看运行情况

Postman使用教程之如何在不同接口之间传递数据

2.在接口B中调用环境变量address_seq

Postman使用教程之如何在不同接口之间传递数据

如上,只要每次在执行B接口前,先执行A,则不必担心地址流水号会失效,达到了地址流水号参数化的目的

在发送request之前,编写pre-request script,来定制化request
 上面的例子已经演示了如何抽取一个请求响应中数据供其他端口来调用,但是这里有个弊端,那就是在执行接口B之前,必须先执行一次接口A,也就意味着批量测试接口时,必须把接口A放在接口B前面。
此外,当又出现一个接口C,负责更新地址信息,这个接口放在接口B后面,意味着,接口A生成地址流水号后,紧接着就被接口B删掉了,此时接口C再调用时就会提示该地址流水号不存在。
为了解决这2个问题,我们可以在执行接口B和接口C之前,各自先调用一下接口A,生成地址流水号仅供自己使用。

1.切换到Pre-request Script标签,在右侧代码片段中可以找到一个Send a request,这是postman提供的发送请求的代码片段

Postman使用教程之如何在不同接口之间传递数据


不幸的是,postman封装的sendRequest()方法默认发送的是get请求,而我生成地址流水号的接口是POST请求,导致一直发送失败~~
经过多番查找,在朋友的帮助下终于找到如何在这里发送post请求了
代码如下

Postman使用教程之如何在不同接口之间传递数据

最终结果如下:

Postman使用教程之如何在不同接口之间传递数据

发送这个请求,可以在console中查看运行情况
Postman使用教程之如何在不同接口之间传递数据
 2.在接口B中调用环境变量del_seq
Postman使用教程之如何在不同接口之间传递数据
可以看出来,上面其实就是经常讲到的参数化过程,掌握了这些技巧,基本上就可以用postman很好地完成接口测试了

转载必须注明来自: Chrome插件 » Postman使用教程之如何在不同接口之间传递数据

Postman

Postman

36 人评论 2179201 次人浏览 4.0分 4.0 分
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。
Live HTTP Headers

Live HTTP Headers

0 人评论 71273 次人浏览 3.0分 3.0 分
Live HTTP Headers是一款可以监听谷歌浏览器当前会话中所有HTTP Header状态的Chrome插件。
React Developer Tools

React Developer Tools

2 人评论 25904 次人浏览 4.1分 4.1 分
React Developer Tools是一款由facebook开发的一款非常好用的chrome调试插件。
Postman for mac

Postman for mac

2 人评论 54463 次人浏览 2.7分 2.7 分
Postman for mac是一个提供在MAC设备上功能强大的开发,监控和测试API的绝佳工具。
Postman for Win32

Postman for Win32

0 人评论 25267 次人浏览 3.5分 3.5 分
Postman for Win32是一款针对Win32系统的功能强大的网页调试与发送网页HTTP请求应用程序。
Postman for Win64(V6.0.10)

Postman for Win64(V6.0.10)

11 人评论 134984 次人浏览 3.2分 3.2 分
Postman for Win64(V6.0.10)是一款针对Win64系统的功能强大的网页调试与发送网页HTTP请求应用程序。
Postman for Linux(x86)

Postman for Linux(x86)

0 人评论 7231 次人浏览 4.0分 4.0 分
Postman for Linux(x86)是一款针对Linux系统x86架构的功能强大的网页调试与发送网页HTTP请求应用程序。
Postman for Linux(x64)

Postman for Linux(x64)

0 人评论 20967 次人浏览 2.3分 2.3 分
Postman for Linux(x64)是一款针对Linux系统x64架构的功能强大的网页调试与发送网页HTTP请求应用程序。
Fiddler教程

Fiddler教程

0 人评论 16530 次人浏览 4.0分 4.0 分
本文详细介绍了fiddler的工作原理、使用方法以及常见配置,是您使用fiddler的必备教程。
Postman for Mac(v6.2.3)

Postman for Mac(v6.2.3)

0 人评论 5245 次人浏览 4.0分 4.0 分
Postman是一款基于不同操作系统提供功能强大的 Web API & HTTP 请求调试的工具。最新版本是8.2日发布的Postman Mac(v6.2.3)。
fiddler插件

fiddler插件

0 人评论 6591 次人浏览 3.0分 3.0 分
fiddler插件是一款基于chrome浏览器和fiddler软件的扩展程序。
评论:(0)

已有 0 位网友发表了一针见血的评论,你还等什么?