postman自动化测试如何设置环境变量教程

news2024/11/16 1:36:57

在接口测试中,我们经常会用到一些通用请求参数,或者需要使用某个接口的返回参数作为另一个接口的请求参数,静态的参数还好,如果是经常变动的参数,那么操作起来,就特别的麻烦,这时候,我们就可以利用postman工具中的环境变量,来简化流程操作,可以节省非常多不必要花费的时候,而且还不容易出现错误。

目录

一、创建环境变量目录

 二、创建接口测试目录

 三、设置环境变量

1、设置全局变量

2、设置环境变量

3、在请求接口中添加环境变量

四、Postman中的其它常用方法


一、创建环境变量目录

首先,我们创建一个名为test的环境变量目录。

 二、创建接口测试目录

然后,再创建一个接口测试目录,方便统计管理同一个项目下的接口。

选择指定刚才创建好的环境变量目录。

 三、设置环境变量

pm.environmentpm.globals主要在作用域和权重上有所不同。

pm.globals是全局变量,一旦设置,就可以在Postman的所有请求和测试脚本中使用。这为我们提供了一个在整个集合中共享数据的方便方式。

pm.environment则是环境变量,其权重高于全局变量。环境变量允许我们为不同的环境(如开发、测试、生产等)定义不同的值。这在进行API测试时非常有用,因为我们可以根据不同的环境使用不同的变量值。例如,我们可以在开发环境中使用一个测试数据库,而在生产环境中使用实际数据库。在使用代码操作的方式时,只需将globals替换为environment即可。在发起一个请求或一键发送所有请求时,我们可以勾选对应的环境来使用不同的变量。

1、设置全局变量

全局变量,全局可用,直接在globals里面设置即可。

2、设置环境变量

环境变量,如果是固定值,可以直接在所创建的环境变量目录中进行设置接口。如果是动态值,也可以在Pre-request Script和Tests中编写脚本进行动态添加。

3、在请求接口中添加环境变量

举个例子:比如我们需要在某个接口中,引用环境变量中的值,如何操作呢? 

首先添加一个环境变量:token:123

 我们随便发起一个请求,注意观察,发起的请求是否携带了,我们设置的环境变量,如果包含我们设置的环境变量,则表示设置成功。

如何通过脚本来设置环境变量呢? 我们可以在Pre-request Script编写代码实现。

pm.environment.set("token",456) // 环境变量
pm.globals.set("token",456)  //全局变量

var environmentToken= pm.environment.get("token"); // 获取环境变量
console.log(environmentToken);
var globalsToken= pm.globals.get("token"); // 获取全局变量
console.log(globalsToken);

 4、将请求返回的参数,设置为环境变量

上面,我们已经实现了,在接口请求前的一些操作,那么应该如何实现,将一个接口的返回数据中的某个值,设置为环境变量呢?这里以微信公众号的一个接口作为例子,简单说明。

 通过调用接口,我们可以看到里面包含access_token参数,这个参数,需要作为另一个接口的请求参数进行调用。我们需要在当前调用即可中的Tests里面编写脚本。 

 

var access_token=pm.response.json()["access_token"]
console.log(access_token)
pm.environment.set("access_token",access_token)

最后,我们就可以通过之前的方式,直接获取到环境变量参数。 

 

四、Postman中的其它常用方法

1、pm.globals.get(variableName):获取全局变量。
2、pm.environment.get(variableName):获取环境变量。
3、pm.test(testName, callback):定义一个测试用例,用于验证请求的结果是否符合预期。
4、pm.expect(actualValue).to.eql(expectedValue):断言实际值等于预期值。
5、pm.sendRequest(url, callback):发送一个自定义的请求。
6、pm.responseTime:获取响应时间。
7、pm.responseCode:获取响应状态码。
8、pm.request.headers:获取请求头信息。
9、pm.request.url:获取请求的 URL。
10、pm.request.method:获取请求方法(如 GET、POST 等)。

等等……

更多postman方法使用可以参考在postman在线文档中进行查阅学习:Postman documentation overview | Postman Learning Center

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

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

相关文章

pytorch代码实现注意力机制之SK Attention

SK注意力机制 简介:在标准卷积神经网络 (CNN) 中,每一层人工神经元的感受野被设计为共享相同的大小。在神经科学界众所周知,视觉皮层神经元的感受野大小受到刺激的调节,这在构建 CNN 时很少被考虑。我们在…

使用阿里云的oss对象存储服务实现图片上传(前端vue后端java详解)

一:前期准备: 1.1:注册阿里云账号,开启对象存储oss功能,创建一个bucket(百度教程多的是,跟着创建一个就行,创建时注意存储类型是标准存储,读写权限是公共读)…

深度学习(6)---Transformer

文章目录 一、介绍二、架构2.1 Multi-head Attention2.2 Encoder(编码器)2.3 Decoder(解码器) 三、Encoder和Decoder之间的传递四、Training五、其他介绍5.1 Copy Mechanism5.2 Beam Search 一、介绍 1. Transformer是一个Seq2Seq(Sequence-to-Sequence)…

redis + 拦截器 :防止数据重复提交

1.项目用到,不是核心 我们干系统开发,不免要考虑一个点,数据的重复提交。 我想我们之前如果要校验数据重复提交要求,会怎么干?会在业务层,对数据库操作,查询数据是否存在,存在就禁止插入数据; 但是吧,我们每次crud操作都会连接…

【史上最全之 ChatGPT 和文心一言对比】

ChatGPT 和文心一言哪个更好用? 在当今的AI助手领域中,ChatGPT与文心一言无疑是备受瞩目的两位选手。两者分别由美国OpenAI公司和中国百度研发,均致力于提供卓越的人工智能对话体验。接下来,我们将从智能回复、语言准确性以及知识…

SQL - 事务控制

SQL - 事务控制 文章目录 SQL - 事务控制TCL - 事务事务的边界事务的特性事务的应用 事务隔离等级MySQL支持四种隔离级别 TCL - 事务 **模拟场景:**生活当中转账是转账方账户扣钱,收账方账户加钱。用数据库操作来模拟现实转账。 数据库模拟&#xff1a…

HH44X-16微阻缓闭式止回阀常见的问题

HH44X-16微阻缓闭式止回阀常见的问题 HH44X-16微阻缓闭式止回阀常遇问题包括以下几点: 一、泄漏: HH44X-16微阻缓闭式止回阀在关闭时可能会发生泄漏,导致介质倒流。泄漏可能由于密封失效、阀门磨损或堵塞等原因造成。 二、堵塞:…

复盘_用工具提升效率

流量池 从 2017 年 10 月,我开始写公众号,一直以来都是零零散散地写,读者也只是随随便便地看。而今年在连续日更了 10 天后,我获得了今年的第一次流量池推荐。 尽管和别人动辄十万百万的阅读量没法比。但是,考虑到我的…

echarts 绘制垂直滚动热力图

问题1:提示功能无效 问题2:值筛选无效 效果 在线浏览 下载echarts官网例子(heatmap Examples - Apache ECharts) 稍作改动: generateData 入参改为长度和宽度noise.perlin2(i / 40, j / 20) Math.random() * 5y轴倒置指定zlevel为2 通过定…

如何使用Jellyfin+cpolar搭建私人影音平台实现无公网ip远程访问

文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及,各种各样的使用需求也被开发出来&…

2024年广东省安全员A证第四批(主要负责人)证模拟考试题库及广东省安全员A证第四批(主要负责人)理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年广东省安全员A证第四批(主要负责人)证模拟考试题库及广东省安全员A证第四批(主要负责人)理论考试试题是由安全生产模拟考试一点通提供,广东省安全员A证…

HCIE之BGP路由策略(三)

BGP 一、路由控制工具ACLIP-PREFIXRoute-Policy 二、BGP路由控制通过更改MED属性调节选路通过更改Local_Pref属性调节选路理解ACL、IP-PREFIX和Route-Policy中permit、deny的含义 三、BGP属性特点-团体属性练习no-advertise属性ORF 一、路由控制工具 在对BGP进行路由控制之前&…

你认识哪几种树结构

二叉树,B,B,B*,R树 二叉树 使用二分结构存储数据,查找数据时,耗时最好可达到O(log2N)。但是二叉树没有平衡的特性,所以在经过一系列的增删后,可能会出现极端的情况,耗时…

利用Python实现中文文本关键词抽取的三种方法

文本关键词抽取,是对文本信息进行高度凝练的一种有效手段,通过3-5个词语准确概括文本的主题,帮助读者快速理解文本信息。目前,用于文本关键词提取的主要方法有四种:基于TF-IDF的关键词抽取、基于TextRank的关键词抽取、…

代理模式-C#实现

该实例基于WPF实现,直接上代码,下面为三层架构的代码。 目录 一 Model 二 View 三 ViewModel 一 Model using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace 设计模式练…

像搭乐高一样把模型拼在一起

琳琅满目的乐高积木,通过一块又一块的叠加,可以创造出各种栩栩如生的人物、景观等,不同的乐高作品相互组合,又能为爱好者带来新的创意。 我们把思路打开一点,在大模型(LLM)爆发的当下&#xff0…

SpringBlade微服务开发平台

采用前后端分离的模式,前端开源两个框架:Sword (基于 React、Ant Design)、Saber (基于 Vue、Element-UI)后端采用SpringCloud全家桶,并同时对其基础组件做了高度的封装,单独开源出一个框架:BladeToolBladeTool已推送至…

Nginx部署、Jenkins自动发布、搜索服务概述、ES部署与使用、消息队列概述、RabbitMQ部署及使用

案例1:HIS前端代码测试 Fontend主机部署Nginx #HIS前端代码为编译后代码,可直接部署在nginx上查看效果[rootFontend ~]# yum clean all; yum repolist -vTotal packages: 8,265[rootFontend ~]# yum -y install nginx.x86_64 #安装nginx…

第13章_泛型(集合中使用泛型,比较器中使用泛型,自定义泛型结构,泛型在继承上的体现,通配符的使用)

文章目录 第13章_泛型(Generic)本章专题与脉络1. 泛型概述1.1 生活中的例子1.2 泛型的引入 2. 使用泛型举例2.1 集合中使用泛型2.1.1 举例2.1.2 练习 2.2 比较器中使用泛型2.2.1 举例2.2.2 练习 2.3 相关使用说明 3. 自定义泛型结构3.1 泛型的基础说明3.2 自定义泛型类或泛型接…

[git] windows系统安装git教程和配置

一、何为Git Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 二、git安装包 有2种版本,Git for Windows Setup和Git for Windows Portable(便携版)两个版本都可以。 三、Git for Windows Por…