Postman使用

Postmam 断言

在Test中设置,对返回的响应结果进行断言。

简介

让 Postman工具 代替 人工 自动判断 预期结果 和 实际结果 是否一致。

断言代码书写在 Tests 标签页中。查看断言结果 Test Results 标签页。

断言 - 响应状态码:Status code:Code is 200

示例:ihrm登录-断言响应状态码

在Test(测试)选项中,选择“Status code:Code is 200”

在Test Results(测试结果)选项中,查看所有断言结果

断言 - 包含指定字符串:Response body: Contains string

示例:ihrm登录-断言包含指定字符串

在Test(测试)选项中,选择“Response body: Contains string”,编辑代码

在Test Results(测试结果)选项中,查看所有断言结果

断言 - json数据:Response body: JSON value Check

当响应结果返回的是json数据,就可以对其断言

示例:ihrm登录-断言json数据

在Test(测试)选项中,选择“Response body: JSON value Check”,编辑代码

在Test Results(测试结果)选项中,查看所有断言结果

Postman 关联

能够使用Postman处理关联数据

简介

当接口和接口之间,有依赖关系时,需要借助 postman 关联技术来实现。

如:登录接口 返回的 令牌数据,被 添加员工接口依赖。

添加员工接口 返回 员工id,被 查询员工接口依赖。

示例1:天气查询(返回city) + 百度搜索(需要city)

1、发送天气接口【http://www.weather.com.cn/data/sk/101010100.html】,从响应结果中获取city的值,并设置为全局变量glb_city

2、发送百度搜索接口【http://www.baidu.com/S?wd={{glb_city}}】,其中 wd={{全局变量}}

# Test代码
# 方式一
#// 1. 获取响应结果
var jsonData = pm.response.json()
#// 2. 从响应结果中,提取 城市名
var city = jsonData.weatherinfo.city
#// 3. 将城市名保存到 全局变量
pm.globals.set("glb_city", city)
# 方式二
var jsonData = JSON.parse(responseBody);
pm.globals.set("glb_city",jsonData.weatherinfo.city);

 

示例2:登录(返回token) + 添加员工(需要token)

登录成功,返回的“令牌”被添加员工接口依赖。

思路:

1. 发送登录请求,获取响应结果

2. 从json响应结果中,提取data值。拼接上“Bearer ”前缀。

注意:Bearer单词不能拼错,首字母必须大写,尾部还有一个空格

3. 拼接无误的 token,已存入环境变量。 从“眼睛”图标查看。

4. 添加员工接口,从环境变量中,提取变量login_Token。设置到请求头中,作为 Authorization 的值。

5. 填写请求体信息,发送请求。

示例3:添加员工(返回id) + 查询员工(需要id)

1、在示例2中,发送添加员工接口后,返回员工id,把id设置为环境变量,供查询员工接口使用。

Postman 参数化

简介

什么是参数化:

将测试数据,组织到数据文件中,通过脚本的反复迭代,使用不同的数据,达到测试不同用例的目标。

应用场景:

一般在测试同一个接口的不同测试点时,只有测试数据不同。考虑使用参数化。

数据文件简介

CSV

JSON

编写数据文件

CSV文件

JSON文件

导入数据文件到Postman

导入csv文件

导入JSON文件

读取数据文件数据

使用方法

根据使用位置不同,有两种读取方法。

第一种:用在请求参数(请求行、请求头、请求体)中,读取数据文件中的数据

  • csv数据文件:{{字段名}}
  • json数据文件:{{键名}}

第二种:用在代码(Tests)中,读取数据文件中的数据

  • csv数据文件:data.字段名
  • json数据文件:data.键名

示例:请求参数:请求行

需求:批量查询手机号、所属运营商,校验运营商数据正确性

接口:http://cx.shouji.360.cn/phonearea.php?number=手机号

由接口可知,请求参数在请求行的url中,符合第一种

填写接口地址、Test代码

编写csv或json数据文件

上传文件、勾选需要测试的接口

点击运行,查看运行结果

点击视图,查看运行过程

示例:请求参数:请求体body

需求:irhm登录请求,手机号/密码 由数据文件csv/json提供。

接口:https://ihrm.itheima.net/api/sys/login

请求体:注意格式,尤其是双引号、{{}}符号

Test代码:对响应结果做判断

 

预请求:如需,可以把数据文件中的数据添加到全局变量 / 环境变量。

若添加到环境变量,则需要指定一个环境变量。

Postman 测试报告

掌握使用newman生成测试报告的命令

使用Postman完成ihrm系统接口测试

安装node.js

cmd打开命令提示符,输⼊命令npm -v,如果能查看到npm的版本号信息(具体版本号是多少⽆所谓),说明已经安装了node.js。

如果没有版本号信息,则按以下步骤去安装。

(1)去官网下载.msi安装包:https://nodejs.org/zh-cn/download

(2)双击 .msi 安装包,勾选接受⽤户协议,不做任何设置。⼀路“下⼀步”即可。(安装过程中,别用鼠标动cmd命令窗口,以免打断安装)

(3)安装完成,输入命令npm -v能查看到版本号,就算成功了。

安装newman

要想给 postman 安装 newman 插件,必须先安装 node.js。这是前提!

(1)在线安装命令:npm install -g newman

注意:使⽤“管理员”身份,启动命令提示符,写⼊命令。

如果安装失败。避开⽹络访问⾼峰期再安装。

注意:Windows终端有缺陷!安装过程中,别⽤⿏标点⿊窗⼝⾥⾯,以免打断安装。

(2)cmd打开新终端。输⼊newman -v看到版本号,说明安装成功。

安装newman-reporter-htmlextra

安装命令:npm install -g newman-reporter-htmlextra

注意:使⽤“管理员”身份,启动命令提示符,写⼊命令。

只要newman安装成功,此插件⼀定能安装成功,如失败,可多尝试⼏次。

安装完,无法验证是否安装成功,⽣成测试报告时,⽅可验证。

从Postman导出用例集

从Postman导出测试环境(看需要)

生成测试报告

示例一:用例集文件+环境文件

找到你的文件保存目录,在目录栏那启动cmd命令窗口

 

在命令窗口输入newman命令,回车等待自动生成测试报告。

示例一:用例集文件+数据文件

导出用例集文件,放在跟数据文件同一目录下,cmd进入命令窗口

如果数据文件中存在多组测试数据,只会测试第一组。

除了上面两种示例,还有其它的组合模式。

posted @ 2023-07-17 01:10  鹿先森JIAN  阅读(350)  评论(0编辑  收藏  举报