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

@pytest.fixture() 跟 @pytest.fixture有区别吗?

在iOS UI 自动化工程里面最早我用的是@pytest.fixture(),因为在pycharm中联想出来的fixture是带()的,后来偶然一次我没有带()发现也没有问题,于是详细查了一下@pytest.fixture() 和 @pytest.fixture的区别,总结了一下分享给大家。

@pytest.fixture() 和 @pytest.fixture 在功能上没有区别,主要的差别在于 括号 是否存在。
1. @pytest.fixture
这是最常见的写法,直接使用 @pytest.fixture 装饰器。由于 @pytest.fixture 装饰器本身没有任何必需的参数,因此不需要加括号。

例如:

import pytest@pytest.fixture
def my_fixture():return "Hello, Pytest!"

2. @pytest.fixture()
这种写法也可以使用,但它是 冗余 的,因为 @pytest.fixture 默认没有必须传递的参数,所以使用括号并不会改变装饰器的行为。

例如:

import pytest@pytest.fixture()
def my_fixture():return "Hello, Pytest!"

【总结】

1、在没有参数时,@pytest.fixture 和 @pytest.fixture() 是等价的,使用括号并不会改变装饰器的功能;@pytest.fixture 是 @pytest.fixture() 的简写形式,它直接调用 fixture 装饰器的默认参数;没有参数时,为了代码简洁和遵循惯例,通常推荐使用 @pytest.fixture,不需要加括号,更简洁。
2、当需要设置参数(如 scope, autouse 等)时,必须使用 @pytest.fixture()。

http://www.lryc.cn/news/506385.html

相关文章:

  • Google Cloud Architect 认证考试错题集5
  • 【Maven】基础(一)
  • 多模态抽取图片信息的 Prompt
  • WPF 使用LibVLCSharp.WPF实现视频播放、停止、暂停功能
  • Java全栈项目 - 校园招聘信息平台
  • java导出
  • 【嵌入式系统】期末试题库,ARM处理器,CortexM3内核,USART,EXTI,GPIO
  • arcgisPro相接多个面要素转出为完整独立线要素
  • QTday1
  • SAP ALV选择列排序时弹出定义排序顺序窗口问题
  • CSS Backgrounds(背景)
  • 欧拉计划 Project Euler 27 题解
  • 迁移学习--fasttext概述
  • 【数字信号处理】数字信号处理试题及答案,离散序列,Z变换,傅里叶变换
  • CNN、RNN、LSTM和Transformer之间的区别和联系
  • springboot448教学辅助系统(论文+源码)_kaic
  • 用QT制作的倒计时软件
  • 基于 mzt-biz-log 实现接口调用日志记录
  • docker容器的安装以及用法
  • Java中的Consumer接口应该如何使用(通俗易懂图解)
  • D102【python 接口自动化学习】- pytest进阶之fixture用法
  • 从零玩转CanMV-K230(4)-小核Linux驱动开发参考
  • 上汽大通汽车CAN数据解析开发服务及技术商用领域详细解析
  • 基于SCUI的后台管理系统
  • 使用频谱分析仪:RBW,Res BW,分辨率带宽;Sweep,扫描;noise floor,底噪,如何降低底噪?
  • 项目管理工具Maven(一)
  • 阿里云ESC服务器一次性全部迁移到另一个ESC
  • 搭建分布式Kafka集群
  • 【后端面试总结】深入解析进程和线程的区别
  • java版电子招投标采购|投标|评标|竞标|邀标|评审招投标系统源码