pytest(二):关于pytest自动化脚本编写中,初始化方式setup_class与fixture的对比

一、自动化脚本实例对比

下面是一条用例,使用pytest框架,放在一个类中,两种实现方式:

1.1 setup_class初始化方式
1. 优点:
  • 代码结构清晰,setup_class 和 teardown_class 看起来像传统的类级别的 setup 和 teardown 方法。
2. 缺点:
  • 使用 autouse=True 的 fixture 作为类方法可能不是最佳实践,因为 fixture 通常不是类的一部分,而是独立的函数。

  • teardown_class 实际上并不是在每个测试方法之后调用,而是在整个类中的所有测试方法之后调用一次。这与 setup_class 的行为不一致,可能会导致误解

1.2 fixture初始化方式
1. 优点:
  • 使用类级别的 fixture (scope="class") 是处理类级别资源初始化和清理的标准 Pytest 方法。
  • fixture 的返回值直接传递给测试方法,避免了使用 self 变量来存储状态。
  • yield 语句允许在 fixture 中定义 teardown 逻辑,确保在每个测试方法之后执行。
相关推荐
weixin_459753949 分钟前
SQL处理大规模分组聚合的内存限制_调整服务器配置
jvm·数据库·python
Rust语言中文社区26 分钟前
【Rust日报】2026-05-14 Pyrefly v1.0 正式发布:快速的 Python 类型检查器和语言服务器
开发语言·后端·python·rust
2601_9561394232 分钟前
广州VI设计公司哪家强
linux·运维·服务器·python
databook1 小时前
让数学公式自动推导
python·数学·动效
m0_733565461 小时前
如何指定PHP版本运行phpMyAdmin_多版本共存配置
jvm·数据库·python
love530love1 小时前
ComfyUI MediaPipe 猴子补丁终极完善版:补全上下文管理与姿态检测兼容
人工智能·windows·python·comfyui·protobuf·mediapipe
小小编程路1 小时前
新手快速学 Python 极简速成指南
开发语言·c++·python
小马过河R2 小时前
RAG检索优化策略:系统性四层框架解析
人工智能·python·算法·ai·llm·rag·问答
yzx9910132 小时前
脚本定制从入门到实践:打造你的专属浏览器助手
python
AI技术控2 小时前
论文解读:AE-TCN-SA——基于自编码器、TCN 与自注意力机制的锂电池内短路诊断方法
人工智能·python·深度学习·算法·机器学习·自然语言处理