【Postman接口测试】Postman的全局变量和环境变量设置

在使用Postman进行接口测试时,全局变量和环境变量的设置是非常实用的功能,它们可以帮助我们更高效地管理测试数据和配置,提高测试的灵活性和可维护性。接下来,我们将详细介绍Postman中全局变量和环境变量的设置方法,并通过具体案例来加深理解。

一、全局变量

全局变量是在整个Postman应用中都可以访问和使用的变量。一旦设置,它可以在不同的请求、测试脚本以及集合中被引用。

(一)设置全局变量

  1. 打开Postman,点击界面右上角的“眼睛”图标,这将打开“Manage Environments”(管理环境)窗口。
  2. 在该窗口中,点击“Globals”(全局)选项卡。
  3. 在“Key”(键)列输入变量名,例如“baseUrl”,在“Value”(值)列输入对应的变量值,比如“https://api.example.com”。这里我们设置的“baseUrl”变量用于存储接口的基础地址。
  4. 点击“Save”(保存)按钮,这样全局变量就设置好了。

(二)使用全局变量

在请求的URL中使用全局变量:假设我们有一个获取用户列表的接口,完整的URL是“https://api.example.com/users”,我们可以将URL中的基础地址部分用全局变量{{baseUrl}}来代替,那么在请求的URL输入框中就可以填写{{baseUrl}}/users。当发送请求时,Postman会自动将{{baseUrl}}替换为我们设置的实际值“https://api.example.com”。

在测试脚本中使用全局变量:在“Tests”选项卡中,我们可以通过pm.globals.get('变量名')的方式来获取全局变量的值。例如,我们想在测试脚本中打印出刚才设置的baseUrl变量的值,可以编写如下代码:

pm.test("打印全局变量baseUrl的值", function () {var baseUrl = pm.globals.get('baseUrl');console.log(baseUrl);
});

二、环境变量

环境变量是针对特定环境设置的变量,不同的环境可以有不同的变量值。这在我们需要在开发、测试、生产等不同环境中进行接口测试时非常有用。

(一)创建和设置环境变量

  1. 同样点击界面右上角的“眼睛”图标,打开“Manage Environments”窗口。
  2. 点击“Add”(添加)按钮,创建一个新的环境,比如命名为“Development”(开发环境)。
  3. 在新创建的环境中,在“Key”列输入变量名,例如“apiKey”,在“Value”列输入对应的变量值,比如“dev_api_key_123”。这里的apiKey变量可能用于在开发环境中进行接口请求的身份验证。
  4. 点击“Save”按钮保存环境变量设置。

(二)切换环境并使用环境变量

  1. 点击界面右上角的环境选择下拉框,选择我们刚才创建的“Development”环境。
  2. 在请求的URL、请求头、请求体或测试脚本中使用环境变量。例如,在一个需要apiKey进行身份验证的接口请求中,我们可以在请求头的“Authorization”字段中使用{{apiKey}}来引用环境变量。那么在请求头的“Authorization”输入框中就填写Bearer {{apiKey}}。当发送请求时,Postman会自动将{{apiKey}}替换为我们在“Development”环境中设置的实际值“dev_api_key_123”。
  3. 在测试脚本中获取环境变量的值,使用pm.environment.get('变量名')的方式。例如,我们想在测试脚本中验证获取到的apiKey变量值是否符合预期,可以编写如下代码:
pm.test("验证环境变量apiKey的值", function () {var apiKey = pm.environment.get('apiKey');pm.expect(apiKey).to.equal('dev_api_key_123');
});

三、案例演示

假设我们有一个电商系统的接口测试项目,需要在开发环境和生产环境中进行测试。

在开发环境中:

  1. 创建一个名为“Development”的环境。
  2. 设置环境变量baseUrl的值为“https://dev.api.example.com”,apiKey的值为“dev_api_key_123”。
  3. 对于一个获取商品列表的接口请求,URL设置为{{baseUrl}}/products,请求头中“Authorization”字段设置为Bearer {{apiKey}}

在生产环境中:

  1. 创建一个名为“Production”的环境。
  2. 设置环境变量baseUrl的值为“https://api.example.com”,apiKey的值为“prod_api_key_456”。
  3. 同样的获取商品列表接口请求,URL和请求头的设置方式不变,当切换到“Production”环境后,Postman会自动使用生产环境中设置的变量值进行请求。

通过全局变量和环境变量的设置,我们可以方便地在不同环境中进行接口测试,并且可以灵活地管理和使用测试数据和配置,大大提高了测试的效率和可维护性。

希望通过本文的介绍,你能熟练掌握Postman中全局变量和环境变量的设置和使用方法,在接口测试工作中更加得心应手。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单片机基础模块学习——按键

一、按键原理图 当把跳线帽J5放在右侧,属于独立按键模式(BTN模式),放在左侧为矩阵键盘模式(KBD模式) 整体结构是一端接地,一端接控制引脚 之前提到的都是使用了GPIO-准双向口的输出功能&#x…

AWScurl笔记

摘要 AWScurl是一款专为与AWS服务交互设计的命令行工具,它模拟了curl的功能并添加了AWS签名版本4的支持。这一特性使得用户能够安全有效地执行带有AWS签名的请求,极大地提升了与AWS服务交互时的安全性和有效性。 GitHub - okigan/awscurl: curl-like acc…

初识MySQL

文章目录 1.数据库2.查看数据库3.创建数据库4.字符集编码和排序规则6.修改数据库7.删除数据库 1.数据库 MySQL是一款使用率高且免费的数据库(使用率仅仅低于Oracle) 关系数据库和 NoSQL 数据库管理系统知识库(DB-Engines Ranking -) (此图数据于2025-1…

flutter_学习记录_00_环境搭建

1.参考文档 Mac端Flutter的环境配置看这一篇就够了 flutter的中文官方文档 2. 本人环境搭建的背景 本人的电脑的是Mac的,iOS开发,所以iOS开发环境本身是可用的;外加Mac电脑本身就会配置Java的环境。所以,后面剩下的就是&#x…

[b01lers2020]Life on Mars1

打开题目页面如下 看了旁边的链接,也没有什么注入点,是正常的科普 利用burp suite抓包,发现传参 访问一下 http://5edaec92-dd87-4fec-b0e3-501ff24d3650.node5.buuoj.cn:81/query?searchtharsis_rise 接下来进行sql注入 方法一&#xf…

【PyTorch】3.张量类型转换

个人主页:Icomi 在深度学习蓬勃发展的当下,PyTorch 是不可或缺的工具。它作为强大的深度学习框架,为构建和训练神经网络提供了高效且灵活的平台。神经网络作为人工智能的核心技术,能够处理复杂的数据模式。通过 PyTorch&#xff0…

机位:解锁摄影视角的多维度密码

目录 一、机位的构成要素 (一)高度维度 (二)角度维度 (三)距离维度 二、移动机位的魅力 (一)推镜头 (二)拉镜头 (三)摇镜头 …

【例51.3】 平移数据

题目描述 将a数组中第一个元素移到数组末尾,其余数据依次往前平移一个位置。 输入 第一行为数组a的元素个数; 第二行为n个小于1000的正整数。 输出 平移后的数组元素,每个数用一个空格隔开。 样例输入 复制 10 1 2 3 4 5 6 7 8 9 10 样例输出 复…

【Project】CupFox电影网站数据爬取分析与可视化

数据采集清洗与数据存储流程如下图所示。 数据分析与数据可视化流程设计如下 1.使用pymongo从数据库中查询所需的数据。对数据进行处理和分析,进行统计、分类、聚合等操作,提取关键指标和洞察。分析结果可以通过编写Python代码进一步优化、筛选和整理&a…

gradle创建springboot单项目和多模块项目

文章目录 gradle创建springboot项目gradle多模块项目创建 gradle创建springboot项目 适用IDEA很简单,如下图 gradle多模块项目创建 首选创建父项目,然后删除无用内容至下图 选择父项目目录,右键选择模块,创建子项目&#xff08…

数据库的JOIN连接查询算法

文章目录 3.2 Join 算法优化3.1.2 Nested Loop Join(NLJ)3.1.3 Block Nested Loop Join(BNLJ)3.1.4 Index Nested Loop Join(INLJ)3.1.5 Sort Merge Join(SMJ)3.1.6 Hash Join 3.2 J…

Golang Gin系列-8:单元测试与调试技术

在本章中,我们将探讨如何为Gin应用程序编写单元测试,使用有效的调试技术,以及优化性能。这包括设置测试环境、为处理程序和中间件编写测试、使用日志记录、使用调试工具以及分析应用程序以提高性能。 为Gin应用程序编写单元测试 设置测试环境…

二叉树的最大深度(C语言详解版)

一、摘要 嗨喽呀大家,leetcode每日一题又和大家见面啦,今天要讲的是104.二叉树的最大深度,思路互相学习,有什么不足的地方欢迎指正!好啦让我们开始吧!!! 二、题目简介 给定一个二…

开发环境搭建-3:配置 nodejs 开发环境 (fnm+ node + pnpm)

在 WSL 环境中配置:WSL2 (2.3.26.0) Oracle Linux 8.7 官方镜像 node 官网:https://nodejs.org/zh-cn/download 点击【下载】,选择想要的 node 版本、操作系统、node 版本管理器、npm包管理器 根据下面代码提示依次执行对应代码即可 基本概…

HTB:Support[WriteUP]

目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用ldapsearch…

洛谷P1017 [NOIP2000 提高组] 进制转换

题目链接:P1017 [NOIP2000 提高组] 进制转换 - 洛谷 | 计算机科学教育新生态 题目难度:普及一 题目分析:这是道数学题,我们都知道,首先按照10进制转成n进制的做法:对这个数不断除以n,将余数一一…

php代码审计2 piwigo CMS in_array()函数漏洞

php代码审计2 piwigo CMS in_array()函数漏洞 一、目的 本次学习目的是了解in_array()函数和对项目piwigo中关于in_array()函数存在漏洞的一个审计并利用漏洞获得管理员帐号。 二、in_array函数学习 in_array() 函数搜索数组中是否存在指定的值。 in_array($search,$array…

【2024年华为OD机试】(A卷,200分)- 查找树中元素 (JavaScriptJava PythonC/C++)

一、问题描述 题目解析 题目描述 题目要求根据输入的坐标 (x, y) 在树形结构中找到对应节点的内容值。其中: x 表示节点所在的层数,根节点位于第0层,根节点的子节点位于第1层,依此类推。y 表示节点在该层内的相对偏移,从左至右,第一个节点偏移为0,第二个节点偏移为1,…

WPS数据分析000006

一、排序 开始→ 排序 同文件→选项→自定义序列→输入序列 二、筛选 高级筛选 条件区域要与列表区域一样。 三、条件格式

基于微信小程序的英语学习交流平台设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…