当前位置: 首页 > news >正文

pytest + yaml 框架 -69.新增depend 关键字,导入其它yaml用例

前言

有小伙伴提到,test_a.yml 中已经写了几个流程,test_b.yml 中希望能接着test_a.yml去写用例,于是就需要先导入test_a.yml用例。
为了满足此需求,v1.6.3版本 在config 中新增 depend 关键字。

需求场景

test_a.yml 中已经写了一些用例

config:variables:x: helloy: worldtest_x1:name: xxrequest:method: posturl: http://httpbin.org/postjson:title: aamessage: bbbtest_x2:name: xxprint: ${x} -- ${y}

test_b.yml 中可以在config 中添加depend 关键字, test_a.yml和test_a.yml 在同一个目录

config:depend: test_a.ymltest_b3:name: xxprint: 输出结果--${y}

那么test_b.yml 就等价于把test_a.yml内容复制过来了

config:variables:x: helloy: worldtest_x1:name: xxrequest:method: posturl: http://httpbin.org/postjson:title: aamessage: bbbtest_x2:name: xxprint: ${x} -- ${y}test_b3:name: xxprint: 输出结果--${y}

所以会重复执行一次test_a.yml用例,再执行test_b.yml 中的用例。

depend 关键字使用

depend 关键字使用规则:

  • 1.只能在 config 中使用,因为它是接着前面一个 yml 用例继续写其他用例。
  • 2.目前只支持一个层级的引用如:b 引入a, 不支持多层级引入,如:c引入b, b又引入了a
  • 3.depend 后面写用例文件的路径,如果在同一目录,可以直接写文件名称,不在同一个目录,需从项目根目录开始,写相对路径。

当 test_a.yml 用例中有在config 定义变量 variables

config:variables:x: helloy: worldtest_x1:name: xxrequest:method: posturl: http://httpbin.org/postjson:title: aamessage: bbbtest_x2:name: xxprint: ${x} -- ${y}

test_b.yml 中没有定义config变量时,会默认读取test_a.yml 用例中定义的变量。

config:depend: test_a.ymltest_b3:name: xxprint: 输出结果--${y}

test_b.yml 中也可以定义config 变量,替换test_a.yml中的变量

config:depend: test_a.ymlvariables:y: aabcctest_b3:name: xxprint: 输出结果--${y}

此时 test_b3 用例引用变量${y} 得到的结果就是 aabbcc

当用例中有局部变量时,用例中定义的变量优先级是最高的

config:depend: test_a.ymlvariables:y: aabcctest_b3:name: xxvariables:y: aa1122print: 输出结果--${y}

此时 test_b3 用例引用变量${y} 得到的结果就是 aa1122

相关文章:

pytest + yaml 框架 -69.新增depend 关键字,导入其它yaml用例

前言 有小伙伴提到,test_a.yml 中已经写了几个流程,test_b.yml 中希望能接着test_a.yml去写用例,于是就需要先导入test_a.yml用例。 为了满足此需求,v1.6.3版本 在config 中新增 depend 关键字。 需求场景 test_a.yml 中已经写…...

【网络】tcp的初始化序列号为什么要随机生成

TCP序列号和确认序列号 在TCP协议中,每个数据包都包含一个序列号和一个确认序列号,用于实现可靠的数据传输和流量控制。 序列号(Sequence Number):序列号是发送端为每个发送的数据包分配的唯一标识,用于标…...

【SRC实战】利用APP前端加密构造数据包

挖个洞先 https://mp.weixin.qq.com/s/ZnaRn222xJU0MQxWoRaiJg “ 以下漏洞均为实验靶场,如有雷同,纯属巧合” 01 — 漏洞证明 “ 参数加密的情况,不会逆向怎么办?” 1、新用户首次设置密码时抓包,此处设置为0000…...

ThreadLocal描述

ThreadLocal是Java中的一个类,用于在多线程环境下存储和获取线程相关的数据。每个ThreadLocal对象都可以维护一个线程本地的变量副本,这意味着每个线程都可以独立地改变自己的副本,而不会影响其他线程的副本。这种特性使得ThreadLocal非常适合…...

Linux-基础命令第三天

1、命令:wc 作用:统计行数、单词数、字符数 格式:wc 选项 文件名 例: 统计文件中的行数、单词数、字符数 说明:59代表行数,111代表单词数,2713代表字符数,a.txt代表文件名 选项…...

Windows Server 2022 环境下WEB和DNS服务器配置方法

目录 实验名称:WEB和DNS服务器配置实验目的实验原理:主要设备、器材:实验内容:配置本地WEB站点配置本地DNS服务器 实验名称:WEB和DNS服务器配置 实验目的 掌握 Windows Server 2022 环境下WEB服务器配置方法 掌握 Wi…...

静态住宅代理 IP 的影响

在不断发展的在线业务和数字营销领域,保持领先地位势在必行。在业界掀起波澜的最新创新之一是静态住宅代理 IP 的利用。这些知识产权曾经是为精通技术的个人保留的利基工具,现在正在成为各行业企业的游戏规则改变者。 一、静态住宅代理IP到底是什么&…...

IP代理中的SOCKS5代理是什么?安全吗?

在互联网世界中,网络安全和个人隐私保护变得日益重要。SOCKS5代理作为一种安全高效的网络工具,不仅可以保护个人隐私安全,还可以提供更稳定、更快度的网络连接。本文将带大家深入了解SOCKS5代理在网络安全领域中的应用。 什么是SOCKS5代理 …...

一个用Kotlin编写简易的串行任务调度器

引言 由于项目中有处理大量后台任务并且串行执行的需求,特意写了一个简易的任务调度器,方便监控每个任务执行和异常情况,任务之间互不影响。正如上所述,Kotlin中的TaskScheduler类提供了一个强大的解决方案,用于使用S…...

JavaScript异步编程——11-异常处理方案【万字长文,感谢支持】

异常处理方案 在JS开发中,处理异常包括两步:先抛出异常,然后捕获异常。 为什么要做异常处理 异常处理非常重要,至少有以下几个原因: 防止程序报错甚至停止运行:当代码执行过程中发生错误或异常时&#x…...

python如何做一个服务器fastapi 和flask

用 fastapi 方式的话 from fastapi import FastAPIapp FastAPI()app.get("/api") def index():return "hello world"然后需要安装 uvicorn 并执行下面的命令 uvicorn server:app --port 8000 --reload最终 如果是用 flask 直接写下面的代码 # -*- cod…...

Element-ui el-table组件单选/多选/跨页勾选讲解

文章目录 一、el-table介绍二、el-table单选三、el-table多选四、el-table跨页勾选五、热门文章 一、el-table介绍 el-table 是 Element UI(一个基于 Vue.js 的高质量 UI 组件库)中的一个组件,用于展示表格数据。通过 el-table,你…...

CentOS 安装 SeaweedFS

1. SeaweedFS 介绍 SeaweedFS 是一个简单且高度可扩展的分布式文件系统。有两个目标: to store billions of files! (存储数十亿个文件!)to serve the files fast! (快速提供文件!) Seaweedfs的中心节点(center master&#xff09…...

Redis如何避免数据丢失?——AOF

目录 AOF日志 1. 持久化——命令写入到AOF文件 写到用户缓冲区 AOF的触发入口函数——propagate 具体的实现逻辑——feedAppendOnlyFile 从用户缓冲区写入到AOF文件(磁盘) 函数write、fsync、fdatasync Redis的线程池 AOF文件的同步策略 触发的入口函数——…...

xFormers

文章目录 一、关于 xFormers二、安装 xFormers三、基准测试(可选)测试安装 四、使用 xFormers1、Transformers 关键概念2、Repo 地图注意力机制Feed forward mechanismsPositional embeddingResidual pathsInitializations 3、主要特征4、安装故障排除 一…...

LQ杯当时的WP

RC4 32位程序用IDA打开看看 进行反汇编 RC4提示,就是一个加密 在sub_401005函数中找到输出的变量,并且立下断点 动调 Packet 字符串搜索flag 看到是给192.168.11.128发送了cat flag的命令 看到它回传 Base64加密了 解一下密码就可以 CC 密码这…...

数据结构与算法学习笔记三---栈和队列

目录 前言 一、栈 1.栈的表示和实现 1.栈的顺序存储表示和实现 1.C语言实现 2.C实现 2.栈的链式存储表示和实现 1.C语言实现 2.C实现 2.栈的应用 1.数制转换 二、队列 1.栈队列的表示和实现 1.顺序队列的表示和实现 2.链队列的表示和实现 2.循环队列 前言 这篇文…...

web入门——导航栏

本专栏内容代码来自《响应式web&#xff08;HTML5CSS3Bootstrap&#xff09;》教材。 导航栏 实现代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content&…...

基于梯度流的扩散映射卡尔曼滤波算法的信号预处理matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1 扩散映射&#xff08;Diffusion Maps&#xff09; 4.2 卡尔曼滤波 4.3 基于梯度流的扩散映射卡尔曼滤波&#xff08;GFDMKF&#xff09; 5.完整程序 1.程序功能描述 基于梯度流的扩散…...

Flutter 中的 ListTile 小部件:全面指南

Flutter 中的 ListTile 小部件&#xff1a;全面指南 在Flutter中&#xff0c;ListTile是一个用于快速创建列表项的组件&#xff0c;它通常用于ListView中&#xff0c;以展示包含文本、图标、开关、滑块等元素的行。ListTile不仅使得界面看起来美观&#xff0c;而且提供了一种简…...

Phi-4-mini-reasoning应用场景:AI竞赛教练系统自动出题与解析

Phi-4-mini-reasoning应用场景&#xff1a;AI竞赛教练系统自动出题与解析 1. 引言&#xff1a;当AI遇见竞赛训练 想象一下&#xff0c;一位数学竞赛教练每天需要&#xff1a; 设计不同难度的题目准备详细的解题步骤针对学生错误提供个性化解析不断更新题库保持新鲜度 传统方…...

别再让MCU直连MOSFET了!用N531搭建你的第一个栅极驱动电路(附PCB文件)

从零构建高效MOSFET驱动电路&#xff1a;N531实战指南 在嵌入式开发中&#xff0c;直接使用MCU的GPIO驱动功率MOSFET是一个常见但危险的做法。我曾亲眼见过一个智能家居项目因为这种设计导致整个控制板烧毁——MOSFET开关缓慢产生的高温不仅损坏了功率器件&#xff0c;还反向影…...

革命性WebAssembly运行时wasmer-go:让Go语言轻松运行WebAssembly模块

革命性WebAssembly运行时wasmer-go&#xff1a;让Go语言轻松运行WebAssembly模块 【免费下载链接】wasmer-go &#x1f439;&#x1f578;️ WebAssembly runtime for Go 项目地址: https://gitcode.com/gh_mirrors/wa/wasmer-go wasmer-go是一个革命性的WebAssembly运行…...

开源工具Wand-Enhancer功能增强技术解析与实战指南

开源工具Wand-Enhancer功能增强技术解析与实战指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 一、问题定位&#xff1a;WeMod功能增强的核心挑战 …...

Hunyuan-MT-7B性能实测:像素语言传送门在单卡A10上并发10路翻译的延迟与稳定性报告

Hunyuan-MT-7B性能实测&#xff1a;像素语言传送门在单卡A10上并发10路翻译的延迟与稳定性报告 1. 测试背景与目标 像素语言传送门&#xff08;Pixel Language Portal&#xff09;是基于腾讯Hunyuan-MT-7B模型构建的创新翻译工具&#xff0c;其独特的16-bit像素冒险界面设计为…...

当AI真正“看懂“你的屏幕:GPT-5.4如何重新定义人机协作的边界

摘要&#xff1a; 2026年3月&#xff0c;OpenAI发布了GPT-5.4。这不是一次普通的模型迭代&#xff0c;而是一次能力边界的重新定义——它首次实现了原生的"计算机使用"能力&#xff0c;能在桌面上像人类一样点击按钮、填写表单、操作软件&#xff1b;它拥有五级可调的…...

聊着天把虾队管了:用 HiClaw 正确打开多智能体协作方式【限时领 PPT】

作者&#xff1a;戴靖泽&#xff08;静择&#xff09; 本文整理自 DataWhale x HiClaw 直播分享&#xff0c;聊聊多 Agent 协作背后的工程思考。 点击此处&#xff0c;查看分享&#xff01; 你有没有试过让一个 AI 同时写前端和后端&#xff1f;聊到后面它把自己定好的 API …...

LABVIEW写入Excel的函数:应用程序目录、创建路径、写入带分隔符电子表格、for循环、条件结构、按名称解除捆绑、创建数组

...

Arduino I²C pH传感器库:高鲁棒性嵌入式pH测量方案

1. 项目概述 iarduino_I2C_pH 是一款专为 iArduino 系列 IC 接口 pH 传感器模块设计的 Arduino 兼容 C 库。该库面向嵌入式硬件工程师与固件开发者&#xff0c;提供对 pH-метр&#xff08;pH 计&#xff09;模块的完整底层控制能力&#xff0c;支持标准硬件 IC 外设&#…...

夜间自动化!OpenClaw调度Qwen3-4B完成凌晨数据备份

夜间自动化&#xff01;OpenClaw调度Qwen3-4B完成凌晨数据备份 1. 为什么需要夜间自动化备份 凌晨三点&#xff0c;我的手机突然弹出服务器告警——又一次因为手动备份遗漏导致磁盘空间不足。作为个人开发者&#xff0c;我意识到需要一套能利用闲置计算资源的自动化方案。传统…...