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

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查找并替换全局变量时,则使用了默认预设的起止索引参数。这种写法我感觉有些奇怪, 但是目前也没想出更好的方法,如果大家有更好的实现思路的话欢迎讨论:)

最佳实践

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

下面是控制台输出:

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

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。

【2025最新版】字节大牛讲的最全最细的自动化测试全套教程!永久白嫖,拿走不谢,全程干货无废话!逼自己15天内学完,从软件测试基础到项目实战一套全通关!

相关文章:

  • 蓝桥杯备考---》贪心算法之矩阵消除游戏
  • 理解Java数据库编程之JDBC
  • 用户模块——业务校验工具AssertUtil
  • 10-SpringBoot3入门-整合TX(事务)
  • 【插件】美化html标签的class 属性上的 tailwindcss 类;Prettier-plugin-tailwindcss
  • 数据链路层协议--以太网协议
  • 结构型设计模式。持续更新
  • ToolsSet之:梯度色板
  • MySQL与Redis数据一致性保障方案详解
  • Langflow深度解析:从核心概念到开发实践
  • Vitis HLS 学习笔记--块级控制(IDE 2024.1 + 执行模式 + 默认接口实现)
  • USB——删除注册表信息
  • UE5学习笔记 FPS游戏制作33 换子弹 动画事件
  • 服务新增节点、迁移笔记
  • 【零基础入门unity游戏开发——通用篇】图片相关设置
  • 【编译、链接与构建详解】Makefile 与 CMakeLists 的作用
  • 【NLP 面经 3】
  • 基于Python的Django框架的个人博客管理系统
  • 大模型在广告行业的一些发展与应用笔记
  • 命令模式介绍及应用案例
  • 上海市企业服务云网站/宁波seo排名优化价格
  • 网站多少钱/seo基础教程视频
  • 个人网站多少钱/太原seo
  • 有一个做ppt的网站/域名交易
  • 做企业网站通常哪找素材/软件推广
  • 做网站是什么职位/公众号seo排名