Postman —— 配置环境变量

PostMan是一套比较方便的接口测试工具,但我们在使用过程中,可能会出现创建了API请求,但API的URL会随着服务器IP地址的变化而改变。

这样的情况下,如果每一个API都重新修改URL的话那将是非常的麻烦,所以PostMan中也提供环境变量的设置

我们在PostMan的右上角可以设定当前的环境Environment。

提示:在实际的日常工作中,一般我们一个模块、一个业务流程或者一个项目创建一个Collections文件夹,把该范围所有要测试的接口都放入这个Collections文件夹中,同时我们也会给这个Collections文件夹,针对不同的环境配置不同的环境变量,比如:本地环境、测试环境、生产环境等。

1、PostMan中操作环境变量区域

在PostMan中的右上角,如下图:

(1)第一个是:选择你之前定义好的环境变量。

我们新注册刚刚开始使用PostMan的时候,是没有定义任何环境变量的,所以点击下拉按钮没有任何展示内容。

(2)第二个是:快速查看PostMan当前生效的环境变量和全局变量。

(3)第三个是:设置环境变量和全局变量。

之前版本是一个小齿轮的图标

上图中英文的意思是:

  • 环境变量是一组变量,允许您切换请求的上下文(也就是说切换不同的请求,都可以用到环境变量中的配置),也可以在多个工作空间之间共享环境变量中的内容。
  • 您可以在环境中声明变量并为其提供一个初始值,然后通过将变量名称放在{{ }}内在请求中使用它。

2、设置环境变量

以我们之前举例的"查询02学院信息"为例,如下图:

(1)环境变量的配置

点击设置环境变量按钮,在弹出的页面中点击Add

对环境变量进行配置,如下图:

说明:

  • Environment Name:就是给环境变量起个名字,一般与Collections相对应。
  • VARIABLE:变量名。
  • INITIAL VALUE:变量的初始值。
  • CURRENT VALUE:变量的当前值。
    变量的当前值是发送请求时使用此值。
    当前值永远不会同步到Postman的服务器。 如果不加改动,当前值将自动采用初始值。
    还有上图界面下方的提示中也说明了,如果需要变量在不同位置使用重用值,可以设置变量的当前值,以防止与团队共享敏感值。
  • Persist All:将所有变量的当前值替换前面的初始值。
  • Reset All:将所有变量的初始值替换后面的当前值。
  • ...:三个点,就是勾选当前页面的显示栏目,默认就好。

最后如果是新增环境变量点击Add,如果是重新编辑了环境变量点击Update。之后在环境变量设置的页面中就看到刚刚设置的环境变量了,如下图:

说明:

  • 点击环境变量名称,可以对该环境变量内容进行编辑。
  • 还可以对环境变量进行如下操作:
    • Share:分享当前环境变量。
    • Duplicate Environment:复制当前环境变量。
    • Download Environment:下载当前环境变量。
    • Manage Roles:管理角色。需要登录团队才能执行这个动作。
    • Remove from workspace:从当前工作区中删除当前环境变量。
      如果当前环境变量只有一份,仅存在于此工作空间中,是无法删除。 您可以永久删除它(使用Delete),也可以将其共享到另一个工作区,然后再将其删除。
    • Delete:删除当前环境变量。

总结:我们可以把当前测试所有接口中,公共部分的变量或者有特殊需求的变量都定义在环境变量中。

提示:

Postman对合作开发非常友好,在Postman中可以通过邀请好友加入团队,来共同协作完成测试与编写。
点击Invite即可邀请成员加入团队。也可以创建自己的独立Workspace来隔离不同的项目,Workspace可以在Postman的顶部工具栏中找到,点击下拉框可以看到自己所在的工作空间,Personal里是自己的工作空间,Team是你创建的团队或你所加入的团队的工作空间。

如下图:

(2)环境变量的使用

环境变量的使用也是非常的方便,在接口的信息或者参数中,使用{{变量名}}来调用环境变量即可。

例如还是上面的练习。

选择刚配置好的“学院系统测试”环境变量。(有多组环境变量的时候,就是在这里选择进行切换)

然后使用环境变量中的内容,如下图:

总结:以后我们可以针对不同的测试流程,或者不同的测试环境,定义不同的环境变量。
  • 方便公共变量的修改。
  • 方便不同环境的切换。

以上就是在PostMan中使用环境变量的全部过程。

3、设置全局变量

全局变量对Postman中所有的请求都可以使用,不用切换。全局变量的配置使用和环境变量的配置使用基本相同。

(1)全局变量的配置

点击设置环境变量按钮,在弹出的页面中点击Globals

配置全局变量,点击Save保存。

保存后,在环境变量页面中不会有任何显示,如下图。

我们可以在快速查看中来查看全局变量。

(2)全局变量的使用

和环境变量的使用相同,使用{{变量名}}来调用全局变量。

说明:

Postman中会有一些默认的全局变量,当我们在变量值的输入框中输入{{就会显示出来,如下图:、

有随机id,时间戳,随机数等,我们可以自行选择使用。

特别注意:
全局变量和环境变量同名时,环境变量的优先级要高于全局变量。

4、快速查看按钮

我们可以点击快速查看按钮,来查看全局变量和当前生效的环境变量。

同时在快速查看界面可以直接修改环境变量和全局变量的当前值(初始值是不能修改的,前面说过初始值和当前值的区别),这也是一个非常实用的功能。

同时也可以点击Edit,直接对环境变量或者全局变量进行重新编辑。

5、导入环境变量

点击设置环境变量按钮,在弹出的页面中点击Import

我们可以把别人导出的Postman环境变量进行导入,文件是一个.json文件。

非常简单,这里就不演示了。

6、补充:

我们在调用环境变量的时候,可以看到E表示环境变量,G表示全局变量。

还有当环境变量和全局变量重名的时候,环境变量会把全局变量覆盖,如下图:

全局变量name的展示说明中,内容上出了一条横线,说明会被环境变量中的name变量覆盖。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

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

相关文章

使用ControlNet生成视频(Pose2Pose)

目录 ControlNet 介绍 ControlNet 14种模型分别是用来做什么的 ControlNet 运行环境搭建 用到的相关模型地址 ControlNet 介绍 ControlNet 是一种用于控制扩散模型的神经网络结构,可以通过添加额外的条件来实现对图像生成的控制。它通过将神经网络块的权重复制到…

从入门到精通:深入了解CSS中的Grid网格布局技巧和应用!

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! ​ 目录 ⭐ 专栏简介 📘 文章引言 一…

【tio-websocket】9、服务配置与维护—TioConfig

场景 我们在写 TCP Server 时,都会先选好一个端口以监听客户端连接,再创建N组线程池来执行相关的任务,譬如发送消息、解码数据包、处理数据包等任务,还要维护客户端连接的各种数据,为了和业务互动,还要把这些客户端连接和各种业务数据绑定起来,譬如把某个客户端绑定到一…

【shell】pis_monitor.sh

#!/bin/bashread -p "请输入要查询的PID:" pidecho "--------------------------------"echo "进程PID:$pid"p_arr("进程命令 11" "进程所属用户 1" "CPU占用率 2" "CPU内存占用率 4" "进程开始运…

深入浅出排序算法之简单选择排序

目录 1. 原理和执行流程 2. 代码实现 3. 性能分析 4. 双向选择排序(了解) 1. 原理和执行流程 选择排序包含了堆排序和简单选择排序。 每一次从无序区间选出最大(或最小)的一个元素,存放在无序区间的最后&#xff0…

Unity URP14.0 自定义后处理框架

目录 碎碎念一些基础CustomPostProcessing.csCustomPostProcessingFeature.csCustomPostProcessingPass.cs例子:BSC后处理shader(BSC)后处理cs脚本(BSC) 例子:ColorBlitPostProcessing.hlslColorBlit2.shaderColorBlit.cs文件 其他…

ab压力测试

标题相关概念 QPS,每秒查询 QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 互联网中,作为域名系统服务器的机…

Python时间序列分析库介绍:statsmodels、tslearn、tssearch、tsfresh

时间序列分析在金融和医疗保健等领域至关重要,在这些领域,理解随时间变化的数据模式至关重要。在本文中,我们将介绍四个主要的Python库——statmodels、tslearn、tssearch和tsfresh——每个库都针对时间序列分析的不同方面进行了定制。这些库…

亿图导出word和PDF中清晰度保留方法

步骤一 在亿图软件中画一个元件大小搭配合理的图。注意字体大小的安排,尤其是角标的大小要合适,示范如下 选中所有元器件,右键使用组合功能将电路图组合为一个整体 步骤二: 将亿图软件中的图保存为SVG格式。示范如下 在导出到…

Mybatis-Plus(企业实际开发应用)

一、Mybatis-Plus简介 MyBatis-Plus是MyBatis框架的一个增强工具,可以简化持久层代码开发MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 官网&a…

人工智能基础_机器学习003_有监督机器学习_sklearn中线性方程和正规方程的计算_使用sklearn解算八元一次方程---人工智能工作笔记0042

然后我们再来看看,如何使用sklearn,来进行正规方程的运算,当然这里 首先要安装sklearn,这里如何安装sklearn就不说了,自己查一下 首先我们还是来计算前面的八元一次方程的解,但是这次我们不用np.linalg.solve这个 解线性方程的方式,也不用 直接 解正规方程的方式: 也就是上面…

java后端返回给前端不为空的属性

问题背景: 目前遇到的一个问题。一个对象里面定义了数组、集合、和字符串属性等,但是返回给前端的时候数组和集合都是空的,前端接收到的是“” 一个空字符。然后保存的时候又把空字符传给后端,出现了数据结构不匹配导致报错。 解…

k8s之Flannel网络插件安装提示forbidden无权限

一、问题描述 在安装k8s的网络插件时,提示如下信息,各种forbidden无权限 [rootzzyk8s01 scripts]# kubectl apply -f kube-flannel.yml Error from server (Forbidden): error when retrieving current configuration of: Resource: "policy/v1b…

基于Qt串口Serial Port配置纯代码实现(桌面和嵌入式平台)

## Serial Port Qt 提供了串口类,可以直接对串口访问。我们可以直接使用 Qt 的串口类编程即可,十分方便。Qt 串口类不仅在 Windows 能用,还能在 Linux 下用,虽然串口编程不是什么新鲜事儿,既然 Qt 提供了这方面的接口,我们就充分利用起来,这将会使我们的开发十分方便!…

UnoCSS快速入门

UnoCSS快速入门 UnoCSS一、UnoCSS简介二、UnoCSS解决问题三、UnoCSS实践四、好文推荐 UnoCSS 一、UnoCSS简介 UnoCSS 是一个即时、按需的原子级 CSS 引擎。它专注于提供轻量化、高性能的 CSS 解决方案。“Instant On-demand” 表示 UnoCSS 的加载和渲染速度非常快,…

如何进行渗透测试以提高软件安全性?

对于各种规模的企业和组织来说,软件安全是一个至关重要的问题。随着网络攻击越来越复杂,软件中的漏洞越来越多,确保你的软件安全比以往任何时候都更重要。提高软件安全性的一个有效方法是渗透测试(penetration testing&#xff09…

Mac-postman存储文件目录

今天postman弹窗要求登录账号才可访问之前的API文档数据。 但是这postman的账号又是前同事的账号,我没有他的账号和密码啊。 登录了我自己的postman账号后,所有的api文档都不见了....我服了。 首先去屏幕左上角---> 前往 --->个人 然后键盘按显…

用图说话——流程图进阶

目录 一、基本流程图 二、时序流程图 一、基本流程图 经常阅读歪果仁绘制的流程图,感觉比较规范,自己在工作中也尝试用他们思维来绘图,这是一个小栗子: 二、时序流程图 在进行Detail设计过程中,一般的绘图软件显得…

【QT】信号和槽能自动传递参数

一、前置示例代码 main.cpp #include "widget.h"#include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv); // 应用程序对象a&#xff0c;在Qt中&#xff0c;应用程序对象&#xff0c;有且仅有一个。Widget w; // 窗口对…