Apikit 自学日记:如何引用全局变量

news2024/11/15 19:30:48

引用全局变量

一、什么是全局变量

全局变量可以在测试过程中动态取值以及赋值,比如:使用登录接口获取 token,将 token 值赋值给自定义全局变量 global_token,然后在另一个需要使用该token的接口中,使用 {{global_token}} 或者代码来引用该全局变量,实现 token 参数的跨 API 传递。

二、变量类型区分

系统中变量有两类:全局变量和环境变量

全局变量

  • 全局变量的脚本函数对应 eo.globals.set("key",value)

  • 对项目内全局有效,但优先级低于环境变量。即若全局变量和环境变量的变量名均为token,则取环境变量值

  • 不依赖于环境,即使没有选择环境也可以使用

环境变量

  • 环境变量的脚本函数对应 eo.env.param.set("key",value)

  • 仅使用项目下某环境测试时有效,优先级高于全局变量。即若全局变量和环境变量的变量名均为token,则取环境变量值

  • 依赖环境,仅在选中该环境测试时方可使用

初始值与本地值

无论全局变量还是环境变量,均有初始值本地值的两种值类型。

  • 初始值

  • 存储在云端,可与团队之间进行共享。自动化测试用例的定时任务仅会使用初始值。

  • 本地值

  • 仅存储在浏览器或PC客户端中,不会在团队之间共享,并且清除浏览器缓存时会把变量的本地值清除。

使用规则

在使用浏览器插件测试和PC客户端本地测试时,若变量有本地值,则使用本地值;若没有本地值,则使用初始值。

在服务器远程测试时,无论是否有本地值,仅会使用初始值进行测试。

在API研发管理中,可以通过点击页面右上角预览环境按钮来查看当前的自定义全局变量值,如下图

三、使用全局变量

在界面上引用全局变量非常简单,只需要输入:{{全局变量参数名}},在测试的时候系统会自动替换成相应全局变量的值。

如果需要对全局变量赋值,或者进行更复杂的操作,可以在预处理代码中输入以下语句:

//获取某个全局变量的值
eo.globals.get("variable_key");

//为某个全局变量赋值,注意值的类型只能是string、number、bool,除此之外会报错。
eo.globals.set("variable_key","variable_value");

//清除某个全局变量
eo.globals.unset("variable_key");

//清除所有全局变量
eo.globals.clear;

比如:

  1. 在预处理中使用eo.globals.set(“token”,”123456″)语句,设置一个自定义全局变量token,赋值为123456。

  2. 然后在请求体的表格中使用{{token}}即可引用该token值,即123456。

引用数据集变量

在测试步骤中使用数据集的变量

在用例的执行步骤中,您可以在请求参数、返回结果、校验规则的输入框中,将鼠标聚焦在输入框,此时输入框上方会出现 关联数据集变量 按钮,点击之后在弹窗中可以选择需要使用的数据集变量。您也可以通过手动输入 $dc{变量名} 的方式来引用变量,在测试时会自动将该变量名替换为每个数据集的实际变量值。

 

 

测试时选择需要执行的数据集并获取返回结果

在测试流程页面,点击右上角批量操作按钮,会在弹窗中选择需要执行的数据集(如果已经添加了多个数据集),点击确定之后,系统会自动执行用该测试流程执行多次并得到每个数据集的测试报告。

 

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

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

相关文章

css,less,scss中的深度选择器,结合elementUi使用

css中深度选择器用到的是 >>>加类名 可以很方便的找到自己想要修改的样式 lees中用到 /deep/ 加类名 scss中用到::v-deep 加类名

【软件工具使用体验NFC】读取nfc里的内容和写入nfc的内容 tagInfo和TagWritter两款软件的使用和下载

教程目录 教程简介所需环境和版本资源免费下载执行过程tagInfo的使用:tagWritter的使用:my dataset的解释: 结束语 教程简介 这篇内容主要是前段时间开发了一个小程序的时候涉及到了通过小程序读写nfc标签的内容,当时还特地和我们…

特征模型仿真例1:参数辨识

题目 考虑被控对象 G ( s ) 3 s 4 s 4 5 s 3 10 s 2 6 s 4 G(s)\frac{3 s4}{s^{4}5 s^{3}10 s^{2}6 s4} G(s)s45s310s26s43s4​ 和特征模型 y ( k ) ϕ T ( k − 1 ) θ ( k ) y(k)\boldsymbol{\phi}^{\mathrm{T}}(k-1)\boldsymbol{\theta}(k) y(k)ϕT(k−1)θ(k) 其…

谁告诉我这是什么文件,怎么了?活不起了?得靠这个冲业绩?

TIM 从一年前就卸载了,今天整理磁盘才发现还有这么多文件,想着没什么用直接删掉得了,没想到他娘的死活删不掉,好多文件一个一个删才找到这玩意,所有能查找运行程序的地方都找遍了,死活没找到在哪打开了&…

第一章 系统服务监控-SpringBootAdmin

前言 本来想用一节就写完SpringBootAdmin的,但随着研究的深入发现一节应该是不够的,网上的资料也不会非常系统,官网的例子有些已经好几年没更新了,所以接下来还是系统性的来写下吧 第一节 完成基础配置,暴露所有端点…

​如何从任何地方访问办公室电脑?

​远程办公已然成为了一种常见的办公方式,在远程工作期间访问办公室电脑获取必要的文件或信息非常重要。与远程访问同一网络中的电脑不同,使用Windows远程桌面从外部访问办公室电脑需要进行端口转发。对于很多人来说,端口转发可能有点复杂。那…

SpringBoot整合RestTemplate用法讲解(完整详细)

前言:本篇主要介绍了RestTemplate中的GET,POST,PUT,DELETE、文件上传和文件下载6大常用的功能,每一个方法和每一行代码都进行了详细的讲解,代码都是亲自测试过的,整篇博客写完以后自己也是受益匪…

缓存穿透、缓存击穿、缓存雪崩详解以及解决方案

缓存穿透、缓存击穿、缓存雪崩详解以及解决方案 一。缓存穿透 查询一个不存在的数据,mysql查询不到数据也不会直接写入缓存,就会导致每次请求都查数据库 方案一: 方案二: 二。缓存击穿 给某一个key设置了过期时间&#xff0…

Mongdb之Robo3T

🏆今日学习目标: 🍀MyBatis详解 ✅创作者:林在闪闪发光 ⏰预计时间:30分钟 🎉个人主页:林在闪闪发光的个人主页 🍁林在闪闪发光的个人社区,欢迎你的加入: 林在闪闪发光的…

2023年PTA行业研究报告

第一章 行业概况 精对苯二甲酸(Pure Terephthalic Acid,简称PTA)是一种主要用于制造聚酯纤维和塑料的关键化学品。PTA是一种白色结晶固体,可通过对苯二酮在催化剂的作用下进行氧化得到。它是聚对苯二甲酸乙二醇酯(PET…

机器视觉三维重建

推荐:将 NSDT场景编辑器 加入你的3D开发工具链。 1、Meshroom ⭐4,474 Meshroom是一款基于AliceVision摄影测量计算机视觉框架的免费开源三维重建软件。 https://github.com/alicevision/meshroom 2、Openmvg ⭐2,829 Openmvg库根据三维计算机视觉和结构的运动。…

Web3 通过truffle 脚本进行智能合约测试

上文 Web3 处理智能合约部署到本地区块链,并在本地进行测试中 我们讲解了部署智能合约 然后在终端测试的方法 但上文那种终端测试 其实并不保险 而且也比较不专业 对于这个 有一个mocha测试 这是基于node部署环境的一种环境测试 但是这个需要一定的基础 大家可以专门…

国产BI工具和国外BI工具,差距大不大,用哪种比较好?

自“十四五”以来,我国诸多政策开始推动信创产业的深入,实现关键数字技术自主研发和自主可控。我国信创产业竞争力不断突破,国产化进程稳步推进。2022年开始政策重点提及“数字经济”、“数字政府”和国家信息化。在此背景下,BI产…

el-date-picker 的初始化数据格式理解、报错 “TypeError: date.getFullYear is not a function“

个人理解 如果后端传给前端的时间数据是字符串类型的,那么当触发 el-date-picker 组件时,就会报出很多错误,例如 这是由于初始化赋值格式的问题,需要对初始化值,进行一个 new Date(your_time_data) 前端演示模板&…

虚拟机快速克隆的步骤

目录 1、关于让应用的快捷方式出现在开始栏的方法2、使用VMware快速克隆2-12-22-32-42-5 克隆虚拟机命名 1、关于让应用的快捷方式出现在开始栏的方法 把应用的快捷方式,放到这个目录中 C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs2、…

uniapp app分享pdf等文件等到微信以及其他应用

uniapp自带的api uni.share只能分享图文等,但不能分享pdf这种之类的 想实现分享文件这种就要调用系统的分享功能 分享插件地址 这个插件完美解决,安卓分享到微信也不需要配置appid 封装用法 /*** 任意文件分享,需勾选云插件并云打包* 安卓调用系统分享无…

DFS解决N-皇后问题

题目: n−皇后问题是指将 n个皇后放在 nn的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。 现在给定整数 n,请你输出所有的满足条件的棋子摆法。 输入格式 共一行,包…

《IntelliJ IDEA 2023最新版快捷键大全GIF动图演示》——提升你的开发效率

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

用css来实现上下左右箭头

i {/* 用border值来控制箭头粗细 */border: 3px solid black;/* 上、右、下、左 四个边框的宽度 */border-width: 0px 1px 1px 0px;display: inline-block;/* padding值控制箭头大小 */padding: 5px; } ____________________________________.right {transform: rotate(-45deg…

浮动——案例

案例1——做出如下图的框架 提示&#xff1a;用ul li来完成 代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-sc…