Postman接口测试02|执行接口测试、全局变量和环境变量、接口关联、动态参数、断言

目录

五、Postman

1、安装

2、postman的界面介绍

六、Postman执行接口测试

1、请求页签

3、响应页签

七、Postman的环境变量和全局变量

1、创建环境变量和全局变量可以解决的问题

2、postman中的操作

八、接口关联

1、第一种方式:Json提取器

2、第二种方式:正则表达式提取器

九、Postman内置动态参数和自定义的动态参数

1、内置动态参数

2、自定义的动态参数

十、Postman断言

1、常规断言:六种

2、动态参数断言

3、全局断言


五、Postman

1、安装

【安装教程】postman下载及安装-CSDN博客

2、postman的界面介绍

Home主页

workspaces 工作空间

  • Collections:项目集合
  • APIs:api文档
  • Enviromments:环境变量,全局变量
  • Mock Server:虚拟服务器
  • Monitors:监听器
  • History:历史记录

六、Postman执行接口测试

下面以get请求为例,post请求参考视频:8.精通Postman之发送post请求及get和post的区别_哔哩哔哩_bilibili

Create Collection→输入集合名称→在集合处右键→点Add request→输入请求名称→设置请求方式为get/post→输入请求路径→(下面是一些GET++请求页面++的参数介绍)→send→(获得响应页签)

1、请求页签

①Params:get请求传参

②authorization:鉴权

③headers:请求头

④Body:post请求传参

  • form-data:既可以传键值对参数也可以传文件。
  • x-www-from-urlencoded:只能够传键值对参数。
  • raw :可以传输 json , text , xml, html , javascript类型数据。
  • binary:把文件以二进制的方式传参。

⑤pre-request-script:请求之前的脚本。

⑥tests:请求之后的断言。

⑦cookies:用于管理cookie信息。

3、响应页签

①Body:接口返回的数据。

  • Pretty:以Json,html,XML .... 不同的格式查看返回的数据。
  • Raw:以文本的方式查看返回的数据。
  • PreView:以网页的方式查看返回的数据。

②Cookies:响应的Cookie信息

③Headers:响应头

④Test Results:断言的结果

⑤200:状态码

⑥OK:状态信息

⑦681MS :响应的时间

⑧343B:响应的字节数


参考的接口文档:

1、获取接口统一鉴权码token接口:获取接口调用凭据 | 微信开放文档

2、标签管理接口

3、黑名单管理接口

4、文件上传接口


七、Postman的环境变量和全局变量

1、创建环境变量和全局变量可以解决的问题

2、postman中的操作

全局变量:在所有的接口里面都可以访问的变量。

环境变量:在当前环境里面都可以访问的变量。
①设置环境变量


环境变量1 环境变量2 环境变量3

②把所有请求中的ip地址改成获取环境变量的方式:{{变量名}}

③在postman右上角选择不同的环境即可

【补充】全局变量在之后补充

八、接口关联

1、第一种方式:Json提取器

①取值并设置全局变量(在一个接口处)
重点是第4行和第7行,第1行和第5行是打印语句
注意这里的接口是第一个接口get

②查看全局变量

③ 在需要的接口里通过{{}}取得全局变量的值(第二个接口处)
这里的接口是第二个接口post

2、第二种方式:正则表达式提取器

和上面Json提取器步骤一样,唯一不一样的是第一步,取值并设置全局变量:

九、Postman内置动态参数和自定义的动态参数

1、内置动态参数

都是带$符号的

{{$timestamp}} //动态生成当前时间的时间戳

{{$randomlnt}} //动态生成0-1000的整形随机数

{{$guid}} //动态生成随机的guid字符串

2、自定义的动态参数

使用时使用:{{times}}

十、Postman断言

1、常规断言:六种

Status code:Code is 200 :检查返回的状态码是否为200(常用)

Response body:Contains string :检查响应中包括指定字符串(常用)

Response body:Json value check: 检查响应中,json中其中一个字段的值(常用)

Response body:is equal to a string :检查响应等于一个字符串(常用)

Response headers:Content-Type header check :检查是否包含响应头Content-Type

Response time is less than 200ms:检查请求耗时小于200ms

python 复制代码
//状态断言
pm.test("检查返回状态码为200",function(){
    pm.response.to.have.status(200);

};


//业务断言
pm.test("检查返回的结果中包括指定access_token字符串",function(){

    pm. expect(pm.response.text()).to.include("access_token");
});

2、动态参数断言

在断言只能获取自定义动态参数(全局变量)的方式:三种方式效果一样

pm.globals.get("times")

globals["times"]

globals.times

复制代码
//业务断言,其中times是自定义的全局变量
pm.test("检查返回的结果中包括标签名",function(){

    pm. expect(pm.response.text()).to.include("测试测试"+pm.global.get("times"));
});

3、全局断言

对于每个接口测试都包含的断言(比如断言状态码是不是200),这种断言可以写在全部断言中,这样其他接口的测试模块的断言就可以不写和全局断言相同的代码了,减少代码重复。

相关推荐
介一安全3 天前
BurpSuite 插件 FastjsonScan 使用和手动验证
测试工具·网络安全·安全性测试·安全靶场
马克Markorg4 天前
使用rust实现的高性能api测试工具
开发语言·测试工具·rust·postman
介一安全4 天前
BurpSuite 插件 Log4j2Scan 使用和手动验证
测试工具·log4j·安全性测试
观音山保我别报错6 天前
抽奖项目-接口自动化测试
功能测试·测试工具·单元测试
我的xiaodoujiao6 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 48--本地环境部署Jenkins服务
python·学习·测试工具·pytest
我的xiaodoujiao6 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 49--CI/CD-开始探索使用Jenkins
python·学习·测试工具·ci/cd·jenkins·pytest
学习3人组6 天前
Win11 使用 Proxifier 强制本地流量通过 Fiddler Classic 代理指南
前端·测试工具·fiddler
少云清6 天前
【UI自动化测试】2_web自动化测试 _Selenium环境搭建(重点)
前端·selenium·测试工具·web自动化测试
少云清6 天前
【UI自动化测试】1_web自动化测试 _测试工具选择
测试工具·web自动化测试
小妖6666 天前
有替代postman的软件吗
测试工具·postman