Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

1.postman介绍及安装

实战细节知识:

前端开发发布前端的代码到服务器上后,必须记得清除浏览器的缓存,否则会导致出现环境问题
Postman介绍(了解):是一款用于调试接口请求的工具,使用简单,功能强大。

  • 特点(了解):
  • 图形化界面
  • 能保存历史记录
  • 能够使用Collection管理用例
  • 能够在团队之间共享接口信息

postman安装
1.下载postman:https://www.getpostman.com/downloads/
2,双击下载下来的安装包,进行安装

2.postman基本操作

案例一 :实现访问百度搜索结构,搜索python

请求方式:Get

请求URL:http://www.baidu.com/s

请求URL中的参数:wd=python

实现步骤:

1,在Postman中设置请求方法为Get

2,在Postman中设置请求URL

3,在Postman的Params中设置请求参数

4,点击Send发送

5,查看响应结果
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报查看响应数据

  • 1,在响应体的Pretty中,寻找title,确认title中搜索的是不是python_百度搜索
    Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报2,可以点击响应体中preview来进行查看
    Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
    案例二:实现Tpshop登陆接口,提交表单数据
    请求方式:Post

请求URL:http://localhost/index.php?m=Home&c=User&a=do_login

请求体中请求参数:username=13800138006&password=123456&verify_code=8888

实现步骤:

1,在Postman中设置请求方法为Post

2,在Postman中设置请求URL

3,在Postman的form-data中设置请求参数

4,点击Send发送

5, 查看响应结果
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报响应的Json数据
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报案例三:实现IHRM登陆接口,提交Json数据
请求方式:Post

请求URL:http://182.92.81.159/api/sys/login

请求体中请求参数:{“mobile”:“13800000002”,“password”:“123456”}

请求头:{“Content-Type”:“application/json”}

实现步骤:

1,在Postman中设置请求方法为Post

2,在Postman中设置请求URL

3,在Postman的Headers中设置请求头

4,在Postman的raw中设置请求参数

5,点击Send发送

6,调试响应数据

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

3 Postman高级用法

Postman用例管理

1,新建Collection
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
2,添加文件
在这里插入图片描述
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

3.,添加请求
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

断言

断言:
让程序判断预期结果和实际结果是否一致
postman断言是使用javaScript语音编写的,写在Tests标签页里
Testsz中的脚本在发送请求之后执行,会把断言的结果最终在Test Results标签页中展示
案例1 断言响应状态码:
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报案例2和案例3
断言包含字符串和断言响应体
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报案例4和案例5

断言Json数据和响应头
注意var是这里设置变量必须定义的
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

Postman全局变量和环境变量

全局变量(了解):全局唯一的变量

环境变量(了解):

  • 变量只属于某个环境
  • 不同环境之间可以允许有变量重复
  • 常见的环境有:测试环境,开发环境,生产环境
  • 一个环境可以包含多个环境变量

扩展内容(重点):

  • 全局变量和环境变量的变量名称重复时,Postman会优先使用环境变量
  • 全局变量或者环境变量中的变量名称重复时,会优先使用最下面的变量

全局变量

1 手动设置全局变量
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

2 检查设置的全局变量

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报3 在请求参数中引用全局变量

通过{{var}}进行引用
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报postman里点击view倒数第二个可以进入控制台
4 在代码中设置全局变量
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报1.直接在请求头引用设置好的全局变量
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
2.在代码中引用并打印
点击set a globle variable获取全局变量
consele.log在控制台打印日志

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

环境变量

  • 手动设置环境变量

点击右上角的齿轮->点击ADD->设置环境变量
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

  • 在请求参数中获取环境变量的方法和全局变量一致
  • 在代码中设置和获取环境变量

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

4 请求前置脚本

Postman调用脚本流程图:
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
注意:在Tests中能够获取到响应数据,而在执行请求前置脚本中不能获取到响应数据(为什么?因为请求前置脚本是在发送请求之前执行的代码)
应用场景:
1.加密
2.生成随机数
案例:
需求:在请求头中添加一个时间戳,参数名为ts
分析:如何获取当前时间? var timestapm = new Date().getTime;
1,在pre-request script中编写代码
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
2, 查看保存的时间戳
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

  • 引用随机数

通过Postman内置随机数进行引用:$guid

{{$guid}}
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

5, 参数关联

参数关联:是指多个接口之间有依赖关系的时使用的技术

使用方法:

1,在A接口中获取Json数据并保存关联的变量到环境变量

2,在B接口中引用保存的环境变量

代码:
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报案例:调用查询天气接口,获取到该接口返回的城市,然后使用百度搜索接口搜索获取到的城市
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报点击send
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

6,批量执行测试用例

点击用例集旁边的三角形,点击Run
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
Environment:选择环境
Itreations:迭代次数
Delay:设置时间
Log Responses For all requests(所有请求都打印日志)
For failed requests(对失败的请求打印日志)
For no requests(没有日志)
Data Select File(引入外部数据文件)
点击Run参数关联

注意:Postman可以进行性能测试,但是不建议使用他,为什么呢?因为Postman的测试结果有很大误差。
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报断言代码写好再次批量执行Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

7 引入外部数据文件

应用场景:针对于某个接口,如果有大量的测试数据需要批量验证,可以吧测试数据保存到数据文件中,通过参数化的方式来实现。
1,我们要设计要测试的接口

2,分析接口,构造数据文件

-常用的数据文件格式有 json,csv

通过Runner引入数据文件,进行自动化接口测试,或者说数据驱动测试,实现参数化关联
CSV:
新建一个文本改名为.csv后缀用Notepad++打开并编辑数据
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
json:
注意下图断言200状态码不能加双引号
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报3, 关联数据文件中的变量到接口的数据当中

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报注意本地环境也要添加mobile,跟password

请求体中mobile的值改成引用外部文件中的变量名
下图200不能加双引号
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

4,通过Runner引入数据文件,进行自动化接口测试,或者说数据驱动测试,实现参数化关联
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
数据驱动之断言

Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
再次导出json数据(断言200不能加引号)
csv断言:
请求体数据更换,断言数据方式跟json一样

8 Postman生成测试报告

1,newman的介绍

newman是一个使用node.js开发的支持Postman接口测试的工具,并且能够生成测试报告

2,安装newman

  • 安装node.js

  • 1,下载node.js
    http://nodjs.cn/download/

  • 2,运行下载的安装包,按照安装向导进行安装

  • 检查安装:打开cmd窗口,输入node -v来检查是否安装成功,如果显示了具体的版本号,就证明安装成功了

  • Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

  • 安装newman

  • 打开cmd窗口,输入node -v确认node.js已经安装

  • 输入npm install -g newman,安装newman

注意:一定要保证网络的通畅;如果安装过程中出现了Error错误,那么需 要进一步分析。

  • 检查newman的安装:输入:newman -v;看到版本号就证明安装成功了

  • Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

  • 安装newman的插件

  • 打开cmd窗口,输入npm install -g newman-reporter-html即可完成安装

  • 检查方法:

    1 打开Newman所在的数据文件目录,检查有没有newman-reporter-html这个文件夹(初步确认)
    Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

2 使用newman命令执行测试用例集生成测试报告,如果没有html的报告,那么证明安装失败

使用newman运行测试用例集生成测试报告

1,导出用例集
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
2,导出环境
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
3,准备数据
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报

4,使用newman生成测试报告

在数据、用例集、环境文件所在目录打开CMD窗口
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
CMD窗口中的目录路径要和文件所在路径完全一致
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
输入dir,确认当前目录有数据文件,用例集文件,环境文件
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
输入newman命令:
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报 没有出现报错和其他信息,就证明生成报告了,然后进入当前目录查看report.html文件
Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报Postman安装、基本操作、高级用法(用例管理、断言、全局/环境变量、请求前置脚本、参数关联、批量执行测试用例、引入外部数据文件、postman生成测试报