你不知道的Postman效率提升技巧

 

Postman想必不用说太多,是非常流行的API调试工具,广泛用于在开发过程中调试接口,简单方便,而且功能强大,具有全球范围的影响力,是大部分程序猿最常用的接口测试工具。

大部分开发同事的使用步骤都比较常规:

① 贴一个需要测试的请求URL

② 手动去别的地方请求登录接口

③ 拿到认证TOKEN再复制粘贴进去

④ 点击请求

其实②③步骤都是可以省略的。

先来看下Postman的请求生命周期:

在Postman中,一个完整的请求生命周期,除了常规的请求(request)和响应(response),还包括前置请求脚本(pre-request script)和后置测试脚本(tests script)。Postman包含一个基于Node.js的强大运行态(runtime),允许用户在pre-request script和tests事件中编写JavaScript代码。

在官方的介绍中,tests事件脚本常用于根据响应状态码或者数据进行断言,然后输出接口正常与否。官方还贴心的封装了一些代码片段供用户使用,比如请求接口、获取变量、设置变量的方法,我们可以写一个脚本来自动完成上述②③步骤。

在tests事件中写一个脚本:当响应遇到认证不通过时,触发请求登录接口,获取TOKEN并写入变量。

pm.test("Auth", function () {
    // 返回Unauthorized时触发
    if (pm.response.status === "Unauthorized") {
        // 请求体
        req = {
            "url": pm.variables.get("auth_url"), // 取出变量认证接口
            "method": "POST",
            "header": {
                "Content-Type": "application/json"
            },
            "body": {
                "mode": "raw",
                "raw": JSON.stringify({
                    "username": pm.variables.get("login_username"), // 取出变量认证用户名
                    "password": pm.variables.get("login_password"), // 取出变量认证密码
                })
            }
        }
​
        // 开始认证请求
        pm.sendRequest(req, function (err, response) {
            if (response.status === "OK") {
                // 请求成功后,把返回的token写入变量
                pm.collectionVariables.set("token", response.json().data.token);
            }
        });
    }
});

创建一个集合,把脚本放入Tests选项卡中(认证接口、用户名、密码变量也可以直接写入脚本,推荐写在Variables中便于修改):

 

在集合的Authorization使用变量token:

 

这样就完成设置一劳永逸了。以后在这个集合内的所有接口都只需填入url,不需要再手动复制粘贴Token了。

当然前置请求脚本(pre-request script)和后置测试脚本(tests script)的运用不止于此,利用脚本去处理一些重复麻烦的工作,可以大大提升开发测试效率。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值