postman入门
简介
接口测试工具
特点:
- 简单易用:有多种查看请求包和响应包的格式,美化beautify功能,配置常用断言,如:状态码,json断言。
- 创建环境 :每个环境可配置不同的变量,实现参数化,同时有助于减少测试重复,因为同一个项目可配置不同环境
- 多人协作 :建立team workspace,共同管理api;可以导入或导出集合和环境,从而方便共享文件。
- 自动化测试:new runner tab功能,实现数据驱动;集成newman,实现批量测试,,输出报告。
安装
官网主页:https://www.postman.com/downloads/
工作结构
workspace >>> collections >>> folder >>> request
workspace:分为个人和团队,Personal workspace 只能自己查看的 API,Team workspace 可添加成员和设置成员权限,成员之间可共同管理 API
collections:对应项目
folder:对应模块
request:对应具体接口
请求内容
常用
请求名称,请求类型,url(端口)
params参数,authorization授权,headers请求头,body请求体,tests断言,cookie管理器
params参数:请求类型为get时使用,会在url中?后明文显示
authorization授权:一般选择bearer token,token的类型bearer,在登录接口的响应头可查
headers请求头:可篡改请求头,比如Content-Type,可以修改为application/json格式。
body:raw:最常用,一般选择json格式;from-data:上传数据文件,text或file;x-www-form:按格式输入键值对;
tests:断言,检查点,可添加多个,逻辑是and关系,常用的有,status code:200(状态码是200成功),response body:json value check()
cookie管理器:postman会自动记录cookie信息,如果你要修改,打开cookie管理器处理即可
环境变量
把接口中经常用到的,写死的部分用变量的方式替代,实现改一处动全局,格式为{{变量名}}
比如:
url中的ip如果换个电脑,ip变了,那我只需要修改环境变量的ip,那么同时修改了所有引用该变量的url
数据驱动
当执行多条形式相同,只有值不同的用例,那么可以进行参数化和数据驱动,参数化格式为{{变量名}},数据驱动支持的文件格式:json、txt、csv。
-
将请求中需要参数化的数据用变量代替,比如,把’李宁’换成’{{brand}}‘,‘中国’换成’{{country}}’
-
准备数据文件,以txt文件举例:(标点符号为英文)
brand,country
李宁,中国
无印良品,日本
-
file(最左上角)>>> new runner type >>> data >>> select file >>> 选择数据文件,lterration(迭代次数)会自动填 >>> start run
关联
当接口和接口之间产生逻辑先后关系,如:登录和添加商品,必须要登录后拿到token才能有添加商品的权限;新建学校和设置录入时间,我们是要新建后拿到新建学校的id号,根据这个id号来设置学校的录入时间,我们就需要做关联。
关联就是把一个接口的执行后的response部分提取出来的数据,给另外的接口用。
具体步骤:
- 在环境变量中创建需要关联的变量
- 在上游接口中的tests添加设置环境变量语句,右边有模板,设置环境变量set an environment variable,也可以设置全局变量set a global variable(一般用不到)。
- 在下游接口中把目标数据替换成变量{{变量名}}
比如token,在登录时可以抓取token值存到环境变量,然后在之后需要授权的接口中引用,方法是在登录接口的tests添加pm.environment.set(“token”, “jsonData.data.token”);,下游接口的token栏填,{{token}}。
完整语句为:
pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.environment.set("token", jsonData.data.token);
});
集成newman
简介
Newman 是 Postman 推出的一个 nodejs 库,直接来说就是 Postman 的json文件可以在命令行执行的插件。
Newman 可以方便地运行和测试集合,并用之构造接口自动化测试和持续集成。
安装
1.安装nodejs
2.安装newman
开始----运行----cmd-----npm install -g newman
使用
1.查帮助
newman run -h
2.常用参数
-e 加载环境变量的数据
-g 加载全局变量的数据
-n 用例执行次数,默认运行次数为1次,不写就执行完数据文件
-r –reporters html,junit 指定生成报告的类型
–folder 运行collection中的指定folder
3.安装报告插件
普通报告
npm install -g newman-reporter-html
加强版报告
npm install -g newman-reporter-htmlextra
4.举例
在postman导出项目测试文件和环境文件,类型为json文件
一般项目文件结构为,data;env;report;testcase,
data:放数据驱动用的数据文件
env:postman导出的环境变量文件
report:放测试报告的目录
testcase:postman导出的测试文件
在项目目录下cmd:
newman run testcase/mall.postman_collection.json -e env/mall.postman_environment.json -d data/brand.txt -r htmlextra --reporter-htmlextra-export report/Report.html