【Postman】Postman接口测试进阶用法详解:断言、全局与环境变量、关联、批量执行用例、读取外部文件实现参数化

文章目录

  • 一、Postman断言
    • 1、断言位置
    • 2、Postman的常用断言
    • 3、操作实例
  • 二、全局变量与环境变量
    • 1、二者区分
    • 2、设置全局变量
    • 3、设置环境变量
  • 三、Postman接口关联
    • 1、概念
    • 2、操作步骤
  • 四、批量执行测试用例
    • 1、操作步骤
    • 2、查看结果
  • 五、读取外部文件实现参数化
    • 1、使用场景
    • 2、操作步骤

一、Postman断言

1、断言位置

  • Postman断言使用JavaScript语言编写,写在Postman的【Tests】 标签中。
  • 【Tests】中的脚本在发送请求之后执行,它会把断言的结果(PASS/FAIL)最终在【Test Results】 标签页中。

2、Postman的常用断言

  • 断言响应状态码是否为200(Status code is 200)
  • 断言响应体JSON数据校验(Response body:JSON value check)
  • 断言响应体是否包含指定字符串(Response body: Contains string)
  • 断言响应体是否等于指定字符串(Response body:Is equal to a string)
  • 断言响应头是否包含指定的头信息(Response headers: Content-Type header
    check)

3、操作实例

在这里插入图片描述

二、全局变量与环境变量

1、二者区分

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

2、设置全局变量

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

3、设置环境变量

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

三、Postman接口关联

1、概念

后一个接口的请求需要依赖前一个接口的响应数据,一般通过全局变量或者环境变量来进行参数在接口之间的传递。

2、操作步骤

(1)观察前置接口的响应数据
假设返回的json对象如下:

{
  "tokeninfo":{
    "token":"xxxx",
    "xxx":"xxx"
  }
}

(2)在前置接口中保存要传递的数据于全局变量/环境变量中
在Test标签里编写代码如下:

var jsonData = pm.response.json()
var token = jsonData.tokeninfo.token

pm.globals.set("g_token",token);

(3)在后续接口直接使用保存的全局/环境变量

四、批量执行测试用例

1、操作步骤

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

2、查看结果

在这里插入图片描述

五、读取外部文件实现参数化

1、使用场景

针对单个接口、存在大量数据需要批量测试测试情况,我们将数据存放到外部的文件,然后postman通过读取外部文件来逐行执行脚本。

2、操作步骤

(1)准备测试数据文件

  • csv
    在这里插入图片描述
  • json
    在这里插入图片描述
    (2)设置参数
  • 在请求中使用,直接通过{{变量名}}引用
  • 在断言中使用时,需要借助postman内置的data方法来进行使用,如下图:
    在这里插入图片描述
    (3)选择数据文件批量执行
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/50840.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【代理模式】了解篇:静态代理 动态代理~

目录 1、什么是代理模式? 2、静态代理 3、动态代理 3.1 JDK动态代理类 3.2 CGLIB动态代理类 4、JDK动态代理和CGLIB动态代理的区别? 1、什么是代理模式? 定义: 代理模式就是为其他对象提供一种代理以控制这个对象的访问。在某…

[VRTK4.0]添加一个Curved Pointer

学习目标: 演示如何将 Tilia曲线指针添加到场景,以及如何使用 OpenXR 指针姿势来确保指针方向始终与 OpenXR 控制器的正确方向匹配 流程: 步骤一: 现在我们需要Tilia包,所以我们转到窗口Tilia包导入器,既…

如何将表格中的状态数据转换为Tag标签显示

考虑到系统前端页面的美观程度,通常通过Tag标签来代替某条数据中的状态信息。仅通过一点操作,便能够使得页面美观程度得到较大提升,前后对比如下所示。代码基于Vue以及Element-ui组件实现。 修改前: 修改后: 修改前…

【图论】LCA(倍增)

一.LCA介绍 LCA通常指的是“最近共同祖先”(Lowest Common Ancestor)。LCA是一种用于解决树或图结构中两个节点的最低共同祖先的问题的算法。 在树结构中,LCA是指两个节点的最近层级的共同祖先节点。例如,考虑一棵树,…

多态的学习

多态指的是父类引用指向子类对象或者接口引用指向实现类的对象。 格式 父类名称 对象名new 子类名字(); 接口名称 对象名new 实现类名(); 对象的向上转型,一定是安全的。但是无法调用子类或者实现类特有的方法,转型的时候可以理解为子类或者实现类将与…

Jenkins配置自动化构建的几个问题

在创建构建任务时,填写git远程仓库地址时,出现以下报错 解决此报错先排查一下linux机器上的git版本 git --version 如果git 版本过低,可能会导致拉取失败,此时需要下载更高的git版本。 参考 Git安装 第二个解决办法报错信息中…

NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读

论文信息 标题:NICE-SLAM: Neural Implicit Scalable Encoding for SLAM 作者:Zihan Zhu, Songyou Peng,Viktor Larsson — Zhejiang University 来源:CVPR 代码:https://pengsongyou.github.io/nice-slam…

小黑子—JavaWeb:第四章 Request与Response

JavaWeb入门4.0 1. Request(请求)& Response (响应)2. Request2.1 Request 继承体系2.2 Request 获取请求数据2.2.1 通用方式获取请求参数2.2.2 IDEA模板创建Servlet2.2.3 请求参数中文乱码处理2.2.3 - I POST解决方案2.2.3 - II GET解决方案 2.3 Request 请求转发 3. Resp…

uniapp h5 竖向的swiper内嵌视频实现抖音短视频垂直切换,丝滑切换视频效果,无限数据加载不卡顿

一、项目背景:实现仿抖音短视频全屏视频播放、点赞、评论、上下切换视频、视频播放暂停、分页加载、上拉加载下一页、下拉加载上一页等功能。。。 二、前言:博主一开始一直想实现类似抖音进入页面自动播放当前视频,上下滑动切换之后播放当前…

CAN学习笔记3:STM32 CAN控制器介绍

STM32 CAN控制器 1 概述 STM32 CAN控制器(bxCAN),支持CAN 2.0A 和 CAN 2.0B Active版本协议。CAN 2.0A 只能处理标准数据帧且扩展帧的内容会识别错误,而CAN 2.0B Active 可以处理标准数据帧和扩展数据帧。 2 bxCAN 特性 波特率…

24考研数据结构-数组和特殊矩阵

目录 数据结构:数组与特殊矩阵数组数组的特点数组的用途 特殊矩阵对角矩阵上三角矩阵和下三角矩阵稀疏矩阵特殊矩阵的用途 结论 3.4 数组和特殊矩阵3.4.1数组的存储结构3.4.2普通矩阵的存储3.4.3特殊矩阵的存储1. 对称矩阵(方阵)2. 三角矩阵(方阵)3. 三对角矩阵(方阵…

【Go语言】Golang保姆级入门教程 Go初学者介绍chapter1

Golang 开山篇 Golang的学习方向 区块链研发工程师: 去中心化 虚拟货币 金融 Go服务器端、游戏软件工程师 : C C 处理日志 数据打包 文件系统 数据处理 很厉害 处理大并发 Golang分布式、云计算软件工程师:盛大云 cdn 京东 消息推送 分布式文…

汉明距离,两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。

题记: 两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y,计算并返回它们之间的汉明距离。 示例 1: 输入:x 1, y 4 输出:2 解释: 1 (0 0 0 1) 4 (0 1 0 0…

spring5源码篇(13)——spring mvc无xml整合tomcat与父子容器的启动

spring-framework 版本:v5.3.19 文章目录 整合步骤实现原理ServletContainerInitializer与WebApplicationInitializer父容器的启动子容器的启动 相关面试题 整合步骤 试想这么一个场景。只用 spring mvc(确切来说是spring-framework)&#x…

PostgreSQL 简洁、使用、正排索引与倒排索引、空间搜索、用户与角色

PostgreSQL使用 PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS),在灵活的BSD许可证下发行。PostgreSQL 9.0 :支持64位windows系统,异步流数据复制、Hot Standby;生产环境主流的版本是PostgreSQL 12 BSD协议 与 GPL协议 …

TypeScript -- 类

文章目录 TypeScript -- 类TS -- 类的概念创建一个简单的ts类继承 public / private / protected-- 公共/私有/受保护的public -- 公共private -- 私有的protected -- 受保护的 其他特性readonly -- 只读属性静态属性 -- static修饰ts的getter /setter抽象类abstract TypeScrip…

【深入理解NAND Flash】 闪存(NAND Flash) 学习指南

依公开知识及经验整理,付费内容,禁止转载。 所在专栏 《深入理解Flash:闪存特性与实践》 1. 我想和你说 漠然回首,从事存储芯片行业已多年,这些年最宝贵的青春都献给了闪存,虽不说如数家珍,但也算专业。 …

Nginx下载、安装与使用

Nginx下载 简介: Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务(邮件服务)。 官网下载地址: https://nginx.org/en/download.html 国内镜像地址: https://mirrors.huawe…

华为云NFS使用API删除大文件目录

最近在使用华为云SFS时,如果一个目录存储文件数超过100W,执行 “rm -rf path”时,存在删不动的情况,可以使用华为云API接口,执行异步删除。 华为官网: 删除文件系统目录_弹性文件服务 SFS_API参考_SFS Tu…

Redis入门

一、Redis的安装 Redis的官方文档介绍了多种安装方式(包括Linux、Windows、MacOs平台上的安装和从源码包安装):Redis安装。这里只介绍源码安装方式。 下载源码包 $ wget https://download.redis.io/redis-stable.tar.gz编译Redis $ tar -xzvf redis-stable.tar.gz …