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),这种断言可以写在全部断言中,这样其他接口的测试模块的断言就可以不写和全局断言相同的代码了,减少代码重复。

相关推荐
niuniu_6662 小时前
Selenium 性能测试指南
selenium·测试工具·单元测试·测试·安全性测试
莓事哒2 小时前
selenium和pytessarct提取古诗文网的验证码(python爬虫)
爬虫·python·selenium·测试工具·pycharm
软件测试曦曦4 小时前
如何使用Python自动化测试工具Selenium进行网页自动化?
自动化测试·软件测试·python·功能测试·测试工具·程序人生·自动化
互联网杂货铺7 小时前
黑盒测试、白盒测试、集成测试和系统测试的区别与联系
自动化测试·软件测试·python·功能测试·测试工具·单元测试·集成测试
Feng.Lee18 小时前
聊一聊缓存如何进行测试
功能测试·测试工具·缓存
爱学测试的雨果20 小时前
Postman —— postman实现参数化
软件测试·功能测试·测试工具·lua·postman
互联网杂货铺1 天前
如何用Postman实现自动化测试?
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
niuniu_6661 天前
安全性测试(Security Testing)
测试工具·单元测试·appium·测试·安全性测试
薄荷你玩_1 天前
简单粗暴,用浏览器调试端口绕过Selenium/Playwright/Puppeteer检测
selenium·测试工具
程序员三藏1 天前
Python+Jenkins+Allure Report接口自动化测试持续集成
自动化测试·软件测试·python·测试工具·ci/cd·jenkins·测试用例