Postman基础功能-变量设置与使用

        如果你因失去太阳而流泪,那你也将失去群星了。大家好,在 API 测试的广袤世界中,Postman 犹如一座闪耀的灯塔,为我们指引着前行的方向。而其中的全局变量、集合变量和环境变量,更是如同隐藏的宝藏,蕴含着巨大的力量和价值。当我们深入探索这些变量的奥秘时,就仿佛开启了一扇通往高效测试和精准控制的大门。它们在 Postman 的生态中扮演着至关重要的角色,让我们的测试工作变得更加灵活、智能且富有条理。现在,就让我们一同踏上这场关于 Postman 变量的精彩旅程,去揭开它们神秘的面纱,领略其独特的魅力与效用。

一、变量类型介绍

        变量可以使大家在请求或脚本中存储和重复使用其值,通过将值保存在变量中,便于其在集合,环境或请求中进行引用,对于做接口测试来说,是一个非常重要的功能。

1、全局变量

        全局变量在整个 Postman 工作区中都可用。它们可以用于存储一些通用的、跨多个请求或集合都可能需要使用的值,比如通用的认证信息、基础路径等,有助于保持测试的一致性和可维护性,它的作用域是最大的。

2、集合变量

        主要在特定的集合内起作用。可以用来定义与该集合相关的一些特定数据或配置,方便在该集合的多个请求中共享和使用特定于集合的信息,使集合内的测试更具针对性和整体性。

3、环境变量

        环境变量与特定的环境相关联。不同的环境(如开发环境、测试环境、生产环境等)可以有不同的环境变量设置。这使得我们可以轻松地在不同环境下切换并执行相应的测试,模拟不同场景下的请求和数据,对于确保 API 在不同环境中的正确运行非常重要。

它们的作用域范围从大到小依次排列为:全局变量 --> 集合变量 --> 环境变量。

当在几个不同的范围内都申明了相同的变量时,则会优先使用范围最小的变量。

二、定义变量

1、设置全局变量

点击左侧菜单的Environments,点击“Globals”,进入全局变量设置页面。

2、设置环境变量

点击左侧菜单的Environments,点击‘+’按钮进行创建环境,然后为新创建的环境起个名字,在右侧创建该环境下的变量以及变量的初始值。

如果有多个环境,则可以选择生效的环境,例如:开发环境、正式环境

3、设置集合变量

方式一(系统级别):

选择一个接口集合(被测系统级别),点击右侧的“...”,点击“Edit”,然后在右侧页面中点击“Variables”,如下图所示:

然后再这个页面中定义变量名称与初始值即可。

此处定义了两个变量:

var1变量的初始值为1

var2变量的初始值为2

方式二(模块级别):

选择一个接口集合(被测系统模块级别),点击右侧的“...”,点击“Edit”,然后在右侧页面中点击“Scripts”,如下图所示:

在Scripts中定义创建变量的代码如下:

// 创建一个环境变量
pm.environment.set("variable_key", "variable_value");// 创建一个全局变量
pm.globals.set("variable_key", "variable_value");// 创建一个集合变量
pm.collectionVariables.set("variable_key", "variable_value");

如图所示:

三、使用变量

        上面我们定义好变量之后,接下来就可以使用变量了。需要注意的是,在不同的位置使用变量,编写的规则也是不一样的。

        如果在请求参数中获取变量,无论是获取全局变量、环境变量,还是集合变量,获取的方式都是一样的编写规则:{{变量名}}
请求参数包含:URL、Params、Authorization、Headers、Body

如果在编写代码的位置(Tests、Pre-requests Script)获取不同类型的变量,则编写的代码各不相同,具体如下:

// 使用一个环境变量
pm.environment.get("variable_key");// 使用一个全局变量
pm.globals.get("variable_key");// 使用一个集合变量
pm.collectionVariables.get("variable_key");

以下是一个示例: 

以上就是关于Postman工具中变量的设置与使用,希望能够给大家带来一定的帮助~

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

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

相关文章

电商秒杀系统设计

业务流程 系统架构 系统挑战 高并发:秒杀活动会在短时间内吸引大量用户,系统需要能够处理高峰时期的大量并发请求 库存同步:在秒杀中,面临的一个严重系统挑战是如何确保在数以万计的用户同时抢购有限的商品时,如何正确、实时地扣减库存,以防止超卖现象。 防止恶意抢购和…

猫头虎分享已解决Error || ERROR: Failed building wheel for XXX

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

系统定时器(SysTick)

介绍SysTick SysTick结构框图 时钟选择 计数器部分 中断部分 工作流程 相关寄存器 配置流程 相关库函数

centos无法tab补全至文件

很奇怪的需求:redhat 7.9版本用cd 只能到目录,无法到文件 我个人认为不是个问题,但是甲方需求,你懂的 首先,我们要搞清楚tab补全功能的包bash-completion是否安装,这里肯定是安装了,不过还是看…

你了解手机设备的dpr吗?它和CSS又有什么联系?

当我们在前端开发中涉及到devicePixelRatio时,我们实际上在谈论屏幕像素密度,即每英寸的像素数。这个属性告诉我们在一个设备上的一个CSS像素对应多少物理像素。 目录 知识点概览 dpr值的计算 dpr的用处 知识点概览 比如我们新买了一个手机&#xff0…

vue vite 环境非构建包编译 React 报错定位

1. 背景 众所周知,vite 在构建生态的位置,vue 与之更是密切,主流的 vue 库几乎都与 vite 捆绑。 但有些 UI 库 如 private/ui 并没进行行编译,而是直接将源码发布到了 npm 中,无法实现兼容化,需要消费方去…

vs-qt中无法加载qsqlite驱动,但是单独新建demo测试却又是正常的。。。

开发环境: Vs2015 + qt5.12 背景: 接手了一个项目,可以编译过去,也可以运行,, 但是登录一直失败,,但是数据库文件也是正常的。。。 最主要的是环境和同事的是一样的,,,但是他那边可以加载成功,我这边不可以。。 后来单独在vs中创建了一个demo,用来测试QSqlData…

Ubuntu虚拟机上推荐一款免费好用的git版本管理工具

工具叫: gitg 软件界面如下: FR:徐海涛(hunkxu)

开眼了,自动化测试还能这样用?

持续集成的自动化测试通常需要将代码、测试用例与持续集成工具进行绑定,以实现自动运行。然而,Apipost的自动化测试功能需要手动操作,并且需要手动查看测试结果。 为了解决这个问题,Apipost推出了持续集成功能,方便同…

【Shell】正则表达式的操作实例

正则表达式是一个描述一组字符串的模式 是由普通字符和元字符组成的字符集,而这个字符集匹配(或指定)一个模式。 正则表达式的操作实例 (一)概述1.定义2.作用3.类型 (二)字符串匹配实例&#xf…

【论文阅读】Machine Learning, Linear Algebra, and More: Is SQL All You Need?

文章目录 摘要一、介绍二、SQL算法原语2.1、Variables2.2、Functions2.3、Conditions2.4、Loops2.5、Errors 三、案例研究3.1、对数据库友好的SQL映射3.2、性能结果 四、结论以及未来工作 摘要 尽管SQL在简单的分析查询中无处不在,但它很少用于更复杂的计算&#xf…

文件流-ASCII文件(中北大学-程序设计基础(2))

目录 题目 源码 结果示例 题目 编写程序实现以下功能:【要求处理ASCII文件】 (1)按职工号由小到大的顺序将5个员工的数据(包括号码、姓名、年龄和工资)输出到磁盘文件中保存; (2&#xff…

自动驾驶决策规划——坐标转换

以下内容来自b站up主忠厚老实的老王,视频链接:自动驾驶决策规划算法序章 总纲与大致目录_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1hP4y1p7es/?spm_id_from333.999.0.0&vd_sourced36e625f376908cfa88ef5ecf2fb0ed8侵删。 决策规划算法…

自动故障转移

这里询问,你的插槽是从哪里移动过来的? all:代表全部,也就是三个节点各转移一部分具体的id:目标节点的iddone:没有了 这里我们要从7001获取,因此填写7001的id: 填完后,…

力扣75. 颜色分类

Problem: 75. 颜色分类 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 由于题目只提供0,1,2分别代表颜色红、白、蓝,并按此排序,那么我们可以遍历两次数组,第一次将0,全部放到数组前面一部分…

移动 App 入侵与逆向破解技术-iOS 篇

如果您有耐心看完这篇文章,您将懂得如何着手进行app的分析、追踪、注入等实用的破解技术,另外,通过“入侵”,将帮助您理解如何规避常见的安全漏洞,文章大纲: 简单介绍ios二进制文件结构与入侵的原理介绍入…

软考考试需要达到多少分才能及格?

当然是45分!45分!45分!而且是各科45! 初级和中级考两科 综合知识考试时长为150分钟,笔试,选择题(上午9:00-11:30) 案例分析考试时长为90分钟,笔试,问答题&…

计算机毕业设计 | vue+springboot图书借阅 书籍管理系统(附源码)

1. 开发目的 实现图书的智能化、信息化和简单化;实现图书信息的增加、删除、修改、查找、借阅、还书、收藏的显示操作及实时数据库的提交和更改和对普通用户的增、删、改、查;提高图书管理员工作信息报送及反馈的工作效率,减轻管理员的劳动负…

设计模式Java实现-迭代器模式

✨这里是第七人格的博客✨小七,欢迎您的到来~✨ 🍅系列专栏:设计模式🍅 ✈️本篇内容: 迭代器模式✈️ 🍱 本篇收录完整代码地址:https://gitee.com/diqirenge/design-pattern 🍱 楔子 很久…

苍穹外卖Day06笔记(复习了jwt的加密解密和传递)

疯玩了一个月,效率好低,今天开始捡起来苍穹外卖~ 1. 为什么不需要单独引入HttpClient的dependency? 因为我们在sky-common的pom.xml中已经引入了aliyun-sdk-oss的依赖,而这个依赖低层就引入了httpclinet的依赖,根据依…