接口自动化测试之 pytest 接口关联框架封装

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

一般情况下,我们是通过一个yaml文件进行关联实现

在根目录下新建一个文件yaml,通过上述conftest.py文件实现全局变量的更新:

1.首先需要建立一个读取、写入、清除yaml文件的工具类

如下:

import os import yaml class YamlUnit: def readAllYaml(self): with open(os.getcwd() + "/extract.yml", mode='r', encoding='utf-8') as f: value = yaml.load(stream=f, Loader=yaml.FullLoader) return value def readKeyYaml(self,key): with open(os.getcwd() + "/extract.yml", mode='r', encoding='utf-8') as f: value = yaml.load(stream=f, Loader=yaml.FullLoader) return value[key] def writeYaml(self, data): with open(os.getcwd() + "/extract.yml", mode='w', encoding='utf-8') as f: print(os.getcwd() + "/extract.yml") value = yaml.dump(data=data, stream=f, allow_unicode=True) def deleteYaml(self): with open(os.getcwd()+"/extract.yml",mode="w",encoding='utf-8') as f: f.truncate()

2.配合conftest.py文件+ fixture实现全局共享调用

# 实现部分前置 import pytest from comment.yaml_unit import YamlUnit @pytest.fixture(scope="function") def conn_getbase(): print("连接数据库成功") yield print("关闭数据库成功") @pytest.fixture(scope="session", autouse=True) def clear_yaml(): YamlUnit().deleteYaml() @pytest.fixture(scope="session", autouse=True) def get_token(): token = ''; # 获取token的代码请求 return token

3.调用时只需传入方法函数名称即可

如:下面函数使用之前需要连接数据库,只需传入conftest.py文件里面的conn_getbase函数名即可

def test_Login(self,conn_getbase): # post请求 url = "xxxxxxx" # 参数 data = { "captcha": "Gkak!@#2019", "checkKey": 1637811815838, "password": "123456", "remember_me": 1, "username": "admin" } rep = requests.request('post', url, json=data) statues = rep.json()["success"] message = rep.json()["message"] if statues: print(message ) else: raise Exception(message)

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

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

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

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

相关文章

基于STM32的智能门锁系统的设计

第二章 整体方案设计 2.1 需求分析 搭建简单的智能门锁系统作品,需要相应的硬件与软件结合,本设计基于STM32的智能门锁系统主要实现的功能要求有: (1)显示屏显示操作界面; (2)使用者可以通过设置按键进入管理界面,可以…

基于单片机的太阳能驱动的智能百叶窗(有完整资料)

资料查找方式:特纳斯电子(电子校园网):搜索下面编号即可编号:T3122407C设计简介:本设计是基于单片机的太阳能驱动的智能百叶窗,主要实现以下功能:通过光敏电阻检测光照值 通过步进电…

《P3200 [HNOI2009] 有趣的数列》

题目描述我们称一个长度为 2n 的数列是有趣的&#xff0c;当且仅当该数列满足以下三个条件&#xff1a;它是从 1∼2n 共 2n 个整数的一个排列 {an​}n12n​&#xff1b;所有的奇数项满足 a1​<a3​<⋯<a2n−1​&#xff0c;所有的偶数项满足 a2​<a4​<⋯<a2…

Belkin发布全新屏幕保护产品系列并推出“日常磨损更换计划”,全面提升设备日常防护水平

• Belkin发布七款全新屏幕保护膜&#xff0c;搭载专有Nano-Titan™技术&#xff0c;显著增强对日常跌落与刮擦的防护能力 • 全新“日常磨损更换计划”让消费者在产品更换方面更加安心无忧 • 消费者现可通过Screen Skinz实现屏幕保护膜的个性化定制 作为一家深耕消费电子领域…

接口自动化测试知识总结

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快1. 什么是接口测试顾名思义&#xff0c;接口测试是对系统或组件之间的接口进行测试&#xff0c;主要是校验数据的交换&#xff0c;传递和控制管理过程&#xff0c;以…

三分钟带你看懂AI大模型(图文教程)

不废话&#xff0c;直接上干货—— 什么是模型&#xff1f; 通俗地讲&#xff0c;模型是一个基于神经网络构建好的处理器&#xff0c;比如函数yF(x)&#xff0c;它能够根据输入x&#xff0c;产生相应的预测y或者输出内容y。什么是训练&#xff1f; 通过输入数据并监督输出结果来…

《CF1278F Cards》

题目描述 考虑如下实验。有一副共 m 张牌的牌堆&#xff0c;且恰好有一张是小丑牌。你将进行 n 次如下操作&#xff1a;将牌堆洗牌&#xff0c;从牌堆顶端抽出一张牌&#xff0c;查看后再放回牌堆。 设 x 表示在本次实验中你抽到小丑牌的次数。假设每次洗牌后&#xff0c;所有…

积木报表重磅更新:移动报表功能全面支持,跨设备无缝对接

在移动互联网时代&#xff0c;移动办公已成为企业数字化转型的重要趋势。然而&#xff0c;传统的报表系统往往只能在 PC 端使用&#xff0c;外出办公、现场数据采集、移动审批等场景下&#xff0c;数据查看和填报受到极大限制。如何打破设备限制&#xff0c;让报表随时随地可访…

【2026年最新网络安全就业方向】网络安全专业的学生毕业后可以从事什么样的工作?

岗位一&#xff1a;渗透测试。 模拟黑客攻击&#xff0c;利用黑客技术&#xff0c;挖掘漏洞&#xff0c;提出修复建议。有些的大厂&#xff0c;例如奇安信&#xff0c;会把渗透岗位分为红蓝两方&#xff0c;对候选人的技术要求比较高&#xff0c;大部分刚入行的新人&#xff0…

普源数字万用表示值不准/开机异常的7种解决方法

普源数字万用表作为电子测量中的常用工具&#xff0c;若出现示值不准或开机异常&#xff0c;会影响测量精度和效率。本文总结了7种常见问题的解决方法&#xff0c;帮助用户快速排查故障&#xff0c;恢复仪器正常功能。检查电池电量与接触 问题&#xff1a;电池电量不足或接触不…

自动化测试基础知识总结

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快自动化测试是指利用自动化工具和脚本&#xff0c;模拟人工操作进行软件测试的过程。它在软件开发中扮演着非常重要的角色&#xff0c;可以提高测试效率、降低成本、…

区块链 Web3 项目开发

区块链 Web3 项目的开发在 2026 年已经进入了“生产力时代”。与早期追求炒作不同&#xff0c;现在的开发更强调实用性&#xff08;Utility-First&#xff09;、合规性以及与 AI 智能体&#xff08;AI Agent&#xff09;的深度融合。以下是区块链 Web3 项目开发的标准流程与核心…

AbMole丨VcMMAE:从CD20到HER2,赋能多靶点ADC开发的通用平台

VcMMAE&#xff08;MC-VC-PAB-MMAE&#xff0c;AbMole&#xff0c;M9216&#xff09;是抗体偶联物&#xff08;ADC&#xff09;研究中的关键组件&#xff0c;由微管抑制剂MMAE&#xff08;单甲基奥瑞他汀E&#xff0c;Monomethyl auristatin E&#xff0c;AbMole&#xff0c;M3…

Launch Template 和 ALB、Target Group、Auto Scaling Group 是什么关系?

一、Launch Template 的作用是什么&#xff1f; 一句话定义&#xff08;面试版&#xff09; Launch Template 是 EC2 实例的标准化启动配置&#xff0c;用来告诉 Auto Scaling“新实例该如何创建和配置”。 Launch Template 具体解决什么问题&#xff1f; Auto Scaling 不会“复…

软件测试之bug分析定位技巧

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快1、web前端Web前端就是通常说的网页。互联网公司的前端一般包含如下内容&#xff1a;JavaScript、ActionScript、CSS、HTML(..ML)、Flash、交互式设计、视觉设计web…

普源数字万用表DM3068与是德科技34461A对比分析

在现代电子测量领域&#xff0c;数字万用表作为基础且关键的测试仪器&#xff0c;广泛应用于研发、生产、维修等多个环节。普源精电&#xff08;RIGOL&#xff09;的DM3068与是德科技&#xff08;Keysight&#xff09;的34461A是两款在中高端市场中颇具代表性的6位数字万用表&a…

基于单片机控制的音乐盒

第2章 系统硬件设计 2.1单片机内部结构 STC89C52 是一种耗能低、性能高CMOS8位微控制器&#xff0c;它基本都是51内核的种类&#xff0c;是新一代增强型单片机&#xff0c;具有8K在系统可编程Flash存储器&#xff0c;加密性好&#xff0c;抗干扰强。STC89C52具有的可编程的Flas…

计算机网络入门必知:从信号到速率,一张图讲清通信基础!

计算机网络入门必知&#xff1a;从信号到速率&#xff0c;一张图讲清通信基础&#xff01;在学习计算机网络时&#xff0c;很多同学会被“码元”“波特率”“比特率”这些术语绕晕。其实&#xff0c;只要理解了底层的通信原理&#xff0c;这些概念就会变得清晰又有趣。今天我们…

解读|生产级RAG系统落地的10个经验教训

本文为大家解读Contextual AI 联合创始人兼CEO&#xff0c;也是著名的RAG技术先驱&#xff0c;Douwe Kiela 分享的他在企业级 RAG 系统实施与落地中的十大经验教训 。 解读纯属个人观点&#xff0c;欢迎探讨。 本次分享主要针对企业AI系统转化为商业价值的关键难题&#xff1a;…

一文带你了解最吃香的金融类软件测试(附面试文档)

&#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、为什么做金融类软件测试举个栗子&#xff0c;银行里的软件测试工程师。横向跟互联网公司里的测试来说&#xff0c;薪资相对稳定&#xff0c;加班少甚至基本没…