阶段五第二章postman高级用法

一级目录用例管理

作用:规范法管理接口上的大量测试用例
实现步骤
1.创建集合–项目(如IHRM,tpshop)
2.创建文件夹–模块(如:登录,员工管理)
3.创建请求–测试用例(如:登录成功)

操作演示
1.创建集合
在这里插入图片描述
2.创建文件夹
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.创建请求
在这里插入图片描述
在这里插入图片描述

二级目录postman断言响应状态码

1.断言前置基础
断言概念:让代码代替人判断用例执行的结果是否符合预期的过程
断言结果:
· 结果一致:测试通过pass
· 结果不一致:测试不通过fail
UnitTest常用的断言方式
在这里插入图片描述
postman断言的特点
1.使用JavaScript语言编写,写在postman的【Tests】标签中
在这里插入图片描述

2.【tests】中的脚本在发送请求之后执行,它会把断言的结果(PASS/FAIL)最终在【Test Results】标签页中
在这里插入图片描述

3.postman提供常用断言的代码片段
· 断言响应状态码是否为200:默认情况下为200(status code is 200)
· 断言响应体JSON数据校验:提取关键字(Response body:JSON value check)
· 断言响应体是否包含指定字符串:如是否包含登录成功,用户名不存在,在返回数据里(Response body: Contains string)
· 断言响应体是否等于指定字符串:如是否等于登录成功,用户名不存在(Response body:ls equal to a string)
· 断言响应头是否包含指定的头信息(Response headers: Content-Type header check)

操作示例
1.1断言响应状态码
在这里插入图片描述

案例
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应状态码为200
在这里插入图片描述

1.2断言JSON数据(重点)
在这里插入图片描述

案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据中success=true,code=10000,message=操作成功!
在这里插入图片描述
排错说明:
(1)检查断言代码片段是否选错了
(2)检查断言代码是否设置错了,预期结果或者是判断实际结果的字段选择错误
(3)先点击发送,基于响应中的body数据做初步预判
(4)检查请求相关参数(请求方式、请求头、请求体)

1.3断言包含指定的字符串内容(知道)模糊查找
在这里插入图片描述
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据中包含【操作成功]
在这里插入图片描述
1.4断言等于指定的字符串内容(知道)精确查找
在这里插入图片描述
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据等于【操作成功]
在这里插入图片描述
1.5断言响应体标签(了解)
在这里插入图片描述案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应头中包含Content-Type和Content-Length

在这里插入图片描述

三级目录环境变量与全局变量

1、概念
全局变量:全局变量是全局唯一的,不可重复定义的变量。作用范围是针对postman下面所有测试集均生效
环境变量:
· 只对选择了对应环境的测试集生效(如:选择了测试环境的测试集IHRM0720)
· 开发环境、测试环境、生产/线上环境 I
· 一套环境中变量不能重复、但是可以定义多个不重复的变量

说明:环境变量的优先级是要高于全局变量的

2.设置变量
全局变量
· 手动设置
复制前半部分URL地址
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

· 代码设置
pm.globals.set(“var_name”, value);

// 设置全局变量
发送请求前先选择对应的环境

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

环境变量
· 手动设置
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

· 代码设置
pm.environment.set(“var_name”, value);

发送请求前先选择对应的环境
// 设置环境变量
在这里插入图片描述

在这里插入图片描述

四级目录 获取变量

全局变量与环境变量
在请求参数中获取{{变量名}}
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

URL
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

请求头
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
请求体
在这里插入图片描述

在这里插入图片描述

代码获取全局变量与环境变量的值
全局变量:var value = pm.globals.get(“var_name”);

环境变量:var value = pm.ervironment.get(“var_namne”);

// 获取环境变量的值mobile2和password2
var mobile = pm.environment.get(“mobile2”);
var password = pm.environment.get(“password2”); console.log(“测试环境中的mobile是:”+ mobile)
console.log(“测试环境中的password是:”+ password)

在这里插入图片描述

五级目录Postman关联(重点)

1.Postman基础介绍
· Postman关联:后一个接口的请求需要依赖前一个接口的响应数据,一般通过全局变量或者环境变量来进行参数在接口之间的传递

· 技术实现
在这里插入图片描述
实现步骤
1、要获取某个请求的响应结果数据,可以通过在‘Tests’标签页中编写JavaScript脚本来实现
2、多个请求之间可以使用全局变量或环境变量来传递数据
3、获取某个全局变量或环境变量的值:{{var_name}}

案例

  1. 请求获取天气的接口,http://www.weather.com.cn/data/sk/101010100.html
    2.获取返回结果中的城市名称
    3.调用百度搜索接口:http://www.baidu.com/s?wd=北京,把获取到的城市名称作为请求参数
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    2.请求前置脚本
    介绍:请求前置脚本就是在“Pre-request Script”标签中所编写的脚本,是在请求发送之前要执行的代码片段。
    应用场景:
    请求参数中包含一个随机数或者时间戳(时间参数)
    请求之前需要对请求参数做进一步处理(如:对敏感参数进行加密)
    在这里插入图片描述
    案例
    需求:请求TPshop项目中获取图片验证码的接口,需要在URL中设置随机数
    请求路径:http://localhost/index.php?m=Home&c=User&a=verify&r=0.6569606479434671
    分析:在JS中如何生成随机数?var r = Math.random(); // 返回[0,1)之间的随机数
    在这里插入图片描述
  • 15
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值