一、Postman
Postman是一个用来模拟各种HTTP请求的接口测试工具,在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求数据发送至服务端,获取对应的响应结果, 从而验证响应中的结果数据是否和预期值相匹配,并确保开发人员能够及时处理接口中的bug,进而保证产品上线之后的稳定性和安全性。
Postman有工作空间(WorkSpace)的概念,可以个人完成也可以多人一起共享完成;其中还有Collection,Collection就相当于是Project,而Collection中可以创建不定层级的Folders(文件夹),可以自己组织TestSuite(测试模块)。每个Request(请求)可以当做是一个TestCase(测试用例)或者Step(测试步骤)。
Postman只能测试Rest(一种软件架构风格)接口 即GET,POST,DELETE,PUT等Http请求,REST 用来规范应用如何在 HTTP 层与 API 提供方进行数据交互 。
1、发起请求
发送请求前,需知道请求类型、请求地址、请求参数
如果请求类型为POST时,必须携带参数,参数请选择“Body”选项,再填写请求数据。
如果GET请求返回结果有异常,可以先检查请求地址请求类型和数据是否正确,其次再检查是否受到接口鉴权限制,剩下的就根据返回的状态码判断。
2、断言(assertion)
断言是一种在程序中的一阶逻辑,目的为了表示与验证软件开发者预期的结果——当程序执行到断言的位置时,对应的断言应该为真。若断言不为真时,程序会中止执行,并给出错误信息。
pm.test(“断言名称”, 处理函数);
3、变量
在Postman中,变量有以下作用域:
全局作用域;
集合作用域;
环境作用域;
局部作用域;
数据作用域。
(1)直接设置
(2)在脚本中定义变量
设置环境变量:
pm.environment.set("variable_key", "variable_value");
设置全局变量:
pm.globals.set("variable_key", "variable_value");
两个请求关联:
var jsonData = pm.response.json();
// 获取响应数据的json格式
pm.globals.set("变量名", jsonData.字段名);
(3)引用变量
在test模块下,可通过
pm.environment.get("var_name");
获取到变量值
(4)脚本介绍
- Pre-request Stricpt (请求前的脚本处理) 是
- Tests (处理响应结果的脚本) 获取接口返回的所有值: JSON.parse(responseBody)
脚本语言介绍:PostMan官方脚本语法库
4、数据驱动
(1)数据导入
数据文件规范:
1.csv
字段名1,字段名2,字段名3
数据1,数据2,数据3
数据4,数据6
数据7,数据8,数据9
2.json
[
{ “字段名1”:“数据1”,“字段名2”:“数据2”,“字段名3”:“数据3” }
{ “字段名1”:“数据4”,“字段名2”:“”,“字段名3”:“数据6” }
{ “字段名1”:“数据7”,“字段名2”:“数据8”,“字段名3”:“数据9” }
]
(2)数据调用
1、请求模块
2、Tests模块
在Tests中编写脚本,并不能直接通过{{var_name}}来引用,可以通过内置变量 data 来 获取
var 变量名= data.字段名;
(3)实战
接口地址1:https://tenapi.cn/v2/phone
接口地址2:https://tenapi.cn/v2/weather
1.测试用例数据准备
2、测试请求准备
3.配置测试集
4.结果展示
5、测试报告
(1)安装newman
newman是postman的命令行,是一种collection测试集运行程序,因为newman依赖nodejs,所以需要提前安装nodejs才能使用newman
- nodejs安装 nodejs下载地址:https://nodejs.org/en/,推进下载LTS版本
- newman安装 更改npm的全局安装路径:
npm config set prefix "文件路径"
更改npm的缓存路径:npm config set cache "文件路径"
newman安装命令:npm install -g newman
查看newman版本:newman -v
查看当前使用的镜像源:npm config get registry
(系统默认:https://registry.npmjs.org/) 设置镜像源地址:npm config set registry 镜像源地址
(2)newman常用命令
语法:
newman run [选项] [文件]
选项说明:
-e:指定t环境变量newman run collection.json -e 环境变量文件
-g:指定全局变量
newman run collection.json -g 环境变量文件
-d:指定数据驱动文件
newman run collection.json -d 测试数据文件
-n:指定测试集循环迭代次数
newman run -n 3 collection.json
-r:指定测试结果报告类型,{cli,json,html}
实例:newman run E:\test.postman_collection.json -d E:\test_data.json -r htmlextra --reporter-htmlextra-export E:\result.html
如果抛出error: EPERM: operation not permitted, mkdir 'E:'异常时,可以进入nodejs安装目录下运行,需去除盘符E:
版权归原作者 just表面兄弟 所有, 如有侵权,请联系我们删除。