API管理工具之Postman脚本编写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了API管理工具之Postman脚本编写相关的知识,希望对你有一定的参考价值。

参考技术A 原文地址: https://www.jianshu.com/p/ff5de99dffe2

Postman中支持脚本的编写,可以利用脚本来实现变量的设置,参数的增加以及结果的测试等等。

使用场景介绍:比如我们在用户token,一段时间后过期,每次要重新手动替换比较麻烦吧?更不符合自动化的理念。

解决方案:在登录的Test脚本更新环境中的token中的变量。

如下示例:

Postman中支持在三个地方编写脚本:

其中collection和folder中脚本的入口如下:

Postman中事件可分为四种:

具体的执行顺序如下:

有两种:

打开之后就可以看到脚本中的输出日志了。

脚本有pre-request和test两种,所在位置如下:

在请求发送之前执行,可用于设置环境变量。

示例:

在收到返回结果后执行,可用于验证返回结果。

示例:

Postman之所以支持脚本的编写是因为Sandbox,这是一个javascript的运行环境。

接口测试工具之postman入门介绍

十分抱歉,让大家久等啦!

前面文章中已经对Postman的安装、更新、界面布局及发送api请求做了介绍。本文将为大家介绍Postman的断言、SandboxCookie、鉴权、集合以及导出脚本的功能。

1. 增加断言

一个完整的接口测试包括:请求—>获取响应正文—>断言

断言:预期结果与实际结果的判断,处理断言时要用到PostmanTest功能:

1)设置全局变量

2)设置环境变量

3)拿到并处理请求的响应

4)定义测试检查点和断言

Postman很人性化的帮我们把断言所用的函数全部给准备好了。

例:给v2exAPI增加断言

接口测试工具之postman入门介绍(二)

1)返回的状态码必须是200

2)返回10条内容

接口测试工具之postman入门介绍(二)

还可以使用另一种方式,返回正确状态码

接口测试工具之postman入门介绍(二)

怎样写断言,具体可以参考Chai文档。

    2. Postmansandbox

Postman Sandbox是一个JavaScript执行环境,这使得你能够为requestpre-request scriptstest scripts 。不论你写的代码是pre-request scripts还是test script都会在sandbox中执行。

3. Postmancookie

接口测试时,有可能存在部分任务场景,部分API必须登录后才能访问。如果使用postman 的话,还是非常简单的。 如果直接访问API,提交参数后,会提示未登录。

解决方法:设置右上角的cookie 在弹出的窗口中,可以编辑增加或修改cookie,一般登录相关的,修改sid 即可 

接口测试工具之postman入门介绍(二)

 4. 鉴权

Authorization针对需要授权的接口,输入用户名和密码之后点击在url中会自动生成authorization信息 

接口测试工具之postman入门介绍(二)

接口测试工具之postman入门介绍(二)

Header中会增加如下内容,再次请求接口,可以请求到查看的权限。

接口测试工具之postman入门介绍(二)

 5. 集合(Collection)功能

Postmancollection功能能够将请求分门别类的归集起来,方便管理。 一个测试工程可以作为一个collection,测试工程的名字作为collection的名字。比如测试博客后台API的借口,新建的collection的名字就叫做BLOG-TEST-COLLECTION,刚才发送请求的测试可以新建一个collection,名字叫做TESTING-COLLECTION。这样当使用postman测试多个项目的时候,通过collection名字区分不同项目。

1)新建collectioncollection选项卡下,点击图案加号在弹出的对话框中输入名称和描述,点击“create”就可以创建一个新的collection

接口测试工具之postman入门介绍(二)

2将请求添加到collection

右击所创建的collection,编辑请求,点击 “save to tsaks”按钮,点击此按钮就可以将请求存储到一个collection中;

接口测试工具之postman入门介绍(二)

3)新建Folder在一个collection下面再新建文件夹,存储不同的请求。这样就可以通过collection (测试工程)–folder(被测功能或模块)–Request(请求)三级关系,可以清晰地管理请求。

接口测试工具之postman入门介绍(二)

4)导入和导出collection,点击“Export”可以将collection导出为json格式的文件,点击“Import”可以导入collection

接口测试工具之postman入门介绍(二)

 6. 导出成pythonrequests脚本

优点:

(1)   导出成多语言脚本,方便二次开发。

(2)   使用其他语言的testrunner

(3)   使用自己最熟悉的语言做接口自动化测试。

打开postman,点击code,选择Python->Requests,复制代码,新建一个文件(.py)拷贝进去。安装python,运行pipinstall requestsrequests是一个很实用的PythonHTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到。之后可以用导出的Python脚本进行数据驱动的接口测试。

 


以上是关于API管理工具之Postman脚本编写的主要内容,如果未能解决你的问题,请参考以下文章

Postman接口测试脚本编写规范

PostMan进阶——测试脚本的编写

Postman之newman运行API包

postman—断言

性能工具之 nGrinder 参数化脚本编写

Postman高级玩法之Pre-request Script