news 2026/4/23 11:44:17

Python接口自动化测试:接口数据依赖

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python接口自动化测试:接口数据依赖

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

一般在做自动化测试时,经常会对一整套业务流程进行一组接口上的测试,这时候接口之间经常会有数据依赖,那又该如何继续呢?

那么有如下思路:

  1. 抽取之前接口的返回值存储到全局变量字典中。
  2. 初始化接口请求时,解析请求头部、请求参数等信息中的全局变量并进行替换。
  3. 发出请求。

抽取接口的返回值存储到全局变量字典中

其中set_global_vars代表的是当前测试用例的全局变量设置列表, self.global_vars则代表测试类实例的全局变量字典,common.dict_get方法的具体实现请移步方法具体实现

解析字符串中全局变量并进行替换

这里,首先先创建识别全局变量的正则规则,然后运用re.sub方法进行替换。其中,re.sub中的repl参数可接受函数作为参数。global_var_repl方法中,使用global_var_dic字典去获取匹配的值并返回。

默认参数中,将全局变量做了这样一个识别: ${GLOBALVAR_NAME}, 用global_var_dic查找并替换全局变量时,则使用了默认预设的起止索引参数。这种写法我感觉有些奇怪, 但是目前也没想出更好的方法,如果大家有更好的实现思路的话欢迎讨论:)

最佳实践

接下来模拟一次全局变量替换的效果:

下面是控制台输出:

可以看出输出还是符合预期的,将字符串中全局变量成功解析。

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

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 17:55:01

在吴忠,遇见你的羽毛球引路人:与韩宁波教练一起,科学系统地成长

在吴忠,越来越多的羽毛球爱好者正汇聚于一个共同的选择——吴忠码上羽毛球俱乐部。这里不仅是挥洒汗水的运动场,更是一个有方法、有温度、有记录的成长平台。俱乐部的核心灵魂,国家二级运动员韩宁波教练,正以其专业的背景和独特的…

作者头像 李华
网站建设 2026/4/8 15:02:30

工控机环境下IAR安装兼容性解决方案:通俗解释

以下是对您提供的技术博文进行 深度润色与结构重构后的专业级技术文章 。全文已彻底去除AI生成痕迹,采用真实嵌入式系统工程师的口吻撰写,语言自然、逻辑严密、细节扎实,兼具教学性、实战性与工程严谨性。文中所有技术点均基于IAR官方文档、…

作者头像 李华
网站建设 2026/4/18 7:06:05

Vue列表渲染的隐形炸弹:为什么v-for必须加key?(新手必看)

文章目录一、问题现场:列表“失忆”了二、为什么key是“救命稻草”?Vue的虚拟DOM原理(简化版)举个真实例子:三、常见错误场景(附代码对比)❌ 错误1:用index当key(最常见&…

作者头像 李华
网站建设 2026/4/20 3:07:35

TurboDiffusion部署教程:Wan2.1/2.2模型快速上手详细步骤

TurboDiffusion部署教程:Wan2.1/2.2模型快速上手详细步骤 1. TurboDiffusion是什么 TurboDiffusion是由清华大学、生数科技与加州大学伯克利分校联合研发的视频生成加速框架,不是简单套壳,而是从底层注意力机制出发的深度优化。它专为解决当…

作者头像 李华
网站建设 2026/4/3 6:21:22

LED显示屏尺寸大小解析:像素间距与分辨率深度剖析

以下是对您提供的博文《LED显示屏尺寸大小解析:像素间距与分辨率深度剖析》的 全面润色与专业升级版 。我以一位深耕LED显示系统十余年、兼具工程落地经验与技术传播能力的行业老兵视角,彻底重构了原文逻辑结构、语言节奏与知识密度,删减冗…

作者头像 李华