Postman变量的使用,引入外部数据文件

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: Postman变量的使用,引入外部数据文件

Variables

变量是一个符号,可以接受不同的值。你可能根据你的项目经验,对其他语言的变量比较熟悉。在postman 的工作原理也是一样的

为什么使用变量

变量允许你在不同的地方重复使用这个值,因此你可以保持你的代码DRY(Dont't Repeat Yourself). 如果你想改变这个值,那么你可以改变这个变量一次,其他地方引用这个变量就会自定改变

如果你有多个API使用相同的域名www.test.com。你可以保存这个域名作为一个变量,代理重复使用这个值:{{domian}}/api/

借助于postman Script脚本作用,你可以设置一个变量的值,复制一个请求的数据在其他的请求的中使用

变量的作用域

有以下的变量作用域:

1. Global---全局


2. Enviroment --- 环境变量


3. Local --- 局部


4. Data ---- 数据

如果一个变量在两个不同的作用域。那么拥有较高级别作用域优先,postma 解析变量是由大范围都小范围解析的

优先级从高到底

Data ---- > Local ---- > Enviroment ---- > Global

在请求的构建器中访问变量

变量在postman 中使用是用下面方式:{{variableName}},当 postman 解析变量事,这个字符串{{variableName}} 会被替换为响应的值。

比如一个环境变量 enviroment variable url 的值被定义为http://localhost,你可以使用{{url}}在请求的输入框中将被替换为http://localhost,当请求被发送的时候

由于变量在请求builder中被访问是使用字符串代替的,因此,你可以在请求builder的任何地方添加文本,这包括URL,URL parameters,headers,authorization, request body ,header presets。

postman 解析这些变量是通过作用域规则

访问变量通过脚本(scripts)

变量可以被使用在pre-request和test script中。因为这些部分是通过JavaScript来写的

你可以以不同的方式初始化和检索这些变量。可以在脚本中初始化变量,并将它们放在特定的范围内

  1. 定义一个变量在脚本中
    在脚本中设置一个变量可以根据变量预定的范围通过pm.environment.set("variable_key", "variable_value");方法或者pm.globals.set("variable_key", "variable_value");方法,这方法要求提供变量的key和value去设置变量。当你发送请求的时候,这脚本将会执行,值将会保存在变量中
  2. 取一个预定义的变量
    一旦一个变量被设置,你可以使用pm.environment.get("variable_key");或者pm.globals.get("variable_key"); 根据适合的范围去获取变量值。这方法要求提供一个变量名作为参数去检索储存的值
  3. 设置一个变量在作用域中
    可以访问环境变量在相应的环境模板。全局变量可以广泛的访问,不管选择的作用域

打印变量 --- Logging variables

经常在脚本中使用变量时,你可能需要看到变量获取到的值,你可以使用Postman Console去实现的。应用菜单,选择View然后在选择Show Postman Console,去打印变量的值。你可以在脚本中使用console.log("domain)";`当你发送请求时,这脚本将会执行,参数对应的值也会打印在Postman Console

image.png

image.png

Data variables 数据 变量

Collection Runner让你导入一个CSV或者JSON文件,然后在HTTP请求和脚本中使用文件中的值。我们把这些值叫做Data variables。

Data variables in requests

变量在postman中使用在{{}}中,比如在 URL 参数 {{username}} 和 {{password}} 将被替换对应文件中变量的值

Data variables in pre-request and test scripts

在pre-request和 test scripts使用,用的是指定的data对象去加载来着文件的值。比如:data.username 或者 data["username"] 去访问文件中对应的username变量。更多的文件数据,参考working with data files

Dynamic variables 内置的动态变量

postman有一些动态变量,你可以在请求中使用。动态变量不能再沙盒中使用,仅仅可以在请求的URL/headers/body中使用

{{$guid}} 添加一个v4风格的guid

{{$timestamp}} 添加一个当前的时间戳

${{$randomInt}} 添加一个 0--10的随机数

-----------------------------------------------------------------------------------------------------------------

如何引用外部数据文件进行参数化?---详细步骤

Pre-request Script就是在请求开始前就已经执行了。

  1. 准备数据文件,user.xt

image.png

 

  1. 配置好请求后在Pre-request Script中写入如图代码后,在需要引用变量的地方引用即可。{{key}}

var name=data.数据文件中的参数名


pm.environment.set("variable_key",name)

 

image.png

  1. 点击文件夹右侧的三角图标后,再点击Run

image.png

image.png

image.png

  1. 设置完成后,点击R下面的Run 按钮得到结果

image.png

  1. 重新执行可点击Retry

image.png

 

设置环境变量和全局变量在这篇文章讲过:配置环境变量和全局变量

相关实践学习
DataV Board用户界面概览
本实验带领用户熟悉DataV Board这款可视化产品的用户界面
阿里云实时数仓实战 - 项目介绍及架构设计
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
相关文章
后端登录接口使用postman,无法接收返回数据,怎样解决,认真比较与原项目的代码,看看有没有写的不一样的,问题就能解决,不要多少写,根据postman的提示先找到错误的进程,看错误进程出现在那个进程
后端登录接口使用postman,无法接收返回数据,怎样解决,认真比较与原项目的代码,看看有没有写的不一样的,问题就能解决,不要多少写,根据postman的提示先找到错误的进程,看错误进程出现在那个进程
|
7月前
|
前端开发 PHP 对象存储
如何用Postman测试文件或图片上传
本文介绍了在某些小项目中,如何使用传统方式将文件上传到与应用程序同一服务器上的方法,而不是使用大平台的对象存储。
1321 3
|
6月前
|
JSON 前端开发 数据格式
后端开发之使用postman工具接收高级数据详解及代码演示
后端开发之使用postman工具接收高级数据详解及代码演示
62 0
|
6月前
|
测试技术 API
Postman 自定义变量使用详解
Postman是一款强大的API测试工具,支持全局、环境、集合和本地四种变量类型,方便不同场景的测试需求。定义变量涉及全局(在“Manage Environments”>“Globals”),环境(创建新环境并添加),集合(编辑集合>“Variables”),以及脚本内定义的本地变量。使用变量时以`{{variableName}}`格式插入,通过`pm.variables.get()`在脚本中获取。变量优先级:本地>数据>环境>集合>全局,可在Pre-request或Tests脚本中动态设置。掌握变量使用能提升测试效率。
|
6月前
|
测试技术 API
Postman 集合变量使用详解
**Postman 集合变量概览** 在API测试中,Postman的集合变量增强测试灵活性。它们定义在集合内,适用于该集合的所有请求,便于参数复用和环境切换。创建变量通过编辑集合->添加变量(Name, Initial Value, Current Value)。在请求URL、Headers等处以`{{variableName}}`引用。可在预请求/测试脚本中动态修改和读取变量。环境变量和集合变量可结合使用,作用域依次为全局→环境→集合→本地。利用集合变量优化API测试效率。
|
6月前
|
数据管理 测试技术 API
Postman变量使用指南
本文介绍了Postman中四种变量的使用,包括全局变量、环境变量、集合变量和局部变量,以提高API测试效率。全局变量适用于多环境共享,环境变量用于切换不同测试环境,集合变量针对特定集合,局部变量则在单个请求或脚本内使用。通过设置和管理这些变量,可以简化测试数据,便于维护测试脚本。
|
7月前
|
存储 JSON API
Postman 如何使用数据文件参数化?
Postman 如何使用数据文件参数化?
508 0
|
7月前
|
XML JSON 测试技术
如何用好Postman中的变量?
如何用好Postman中的变量?
|
JSON 测试技术 数据安全/隐私保护
postman使用--批量执行测试用例和数据驱动
postman使用--批量执行测试用例和数据驱动
|
JSON Java 数据格式
Postman发送json数据出现HttpMessageNotReadableException: Required request body is missing的几种解决方法以及页面显示400解决
Postman发送json数据出现HttpMessageNotReadableException: Required request body is missing的几种解决方法以及页面显示400解决
568 0