1、介绍与使用场景

conftest.py 这个是什么呢?
 
顾名思义,他就是一个文件,那这个文件是干什么用的呢?
 
在我们上文中,用了fixture函数是直接在用例的文件里定义的,那不能我们所有的用例想用到fixture都一个个定义吧,所以Pytest提供了一个conftest.py文件,这样呢,就可以把我们的fixture函数存放到这里
 
有人会问,我们用这个,具体可以干啥呢?
 
举个例子,我们做ui自动化,首先第一步会登录获取token,然后接着其他操作,在其他操作前都有登录这个功能,所以其他操作就是一个个用例函数,而登录获取token就可以前置,然后使用fixture函数,那这个函数就可以用到conftest.py文件
 
当然,既然是别人封装好的功能,那肯定有对应的规则,conftest.py文件也有他的规则
  • conftest.py文件名字是固定的,不可以做任何修改
  • conftest.py文件和用例文件在同一个目录下,那么conftest.py作用于整个目录
  • conftest.py文件所在目录必须存在__init__.py文件
  • conftest.py文件不能被其他文件导入
  • 所有同目录测试文件运行前都会执行conftest.py文件
 
还要补充两点:
1、不同目录可以有自己的conftest.py,一个项目中可以有多个conftest.py
2、pytest会自动查找项目中的conftest.py文件,逐层往上查找
 

2、实战环节

我们还是直接看实战吧
首先创建目录:
 
conftest.py文件代码:
import pytests
@pytest.fixture(scope='class')
def set():
print("用例前的登录操作")
test_01.py文件代码:
class Test_Demo1():

    def test_01(self, set):
print('用例-搜索功能执行') def test_02(self, set):
print('用例-输入功能执行')
 
test_02.py文件代码:
class Test_Demo1():

    def test_01(self, set):
print('用例-购买功能执行')
 
这里在做实战的时候,作者犯了两个错误:
第一个没有__init__文件
第二个是没有在用例函数中引入fixture参数名
 
我们执行下结果看下:
 

PlayWright(二十)- Pytest之conftest文件的更多相关文章

  1. Unity3D学习笔记(二十五):文件操作

    文件是什么? 存储在硬盘上的最后的节点. 文件夹是什么? 文件的上级单位称为文件夹. 文件夹的基本结构? 文件夹是层级化结构的,对于同级的文件夹不可以重名,父文件夹和子文件夹可以同名> IO:I ...

  2. Python小白学习之路(二十)—【打开文件的模式二】【文件的其他操作】

    打开文件的模式(二) 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码.图片文件的jgp格 ...

  3. 二十、Android -- SDcard文件读取和保存

    背景                                                                                            一些东西可以 ...

  4. Python脚本控制的WebDriver 常用操作 <二十六> 上传文件

    测试用例场景 上传文件的方法是找到上传文件的对象,通常是的对象.然后直接往这个对象send_keys,传入需要上传文件的正确路径.绝对路径和相对路径都可以,但是上传的文件必须存在,否则会报错. Pyt ...

  5. Python学习笔记(二十五)操作文件和目录

    摘抄:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014319253241 ...

  6. JAVA之旅(二十九)——文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习

    JAVA之旅(二十九)--文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习 我们继续学习File 一.文件递归 我们可以来实现 ...

  7. JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤

    JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...

  8. JAVA之旅(二十五)——文件复制,字符流的缓冲区,BufferedWriter,BufferedReader,通过缓冲区复制文件,readLine工作原理,自定义readLine

    JAVA之旅(二十五)--文件复制,字符流的缓冲区,BufferedWriter,BufferedReader,通过缓冲区复制文件,readLine工作原理,自定义readLine 我们继续IO上个篇 ...

  9. JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习

    JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了 ...

  10. (C/C++学习笔记) 二十. 文件和流

    二十. 文件和流 ● 文件的概念 文件(file) 一. C/C++语言将文件作为字节序列(sequence of characters)来对待,但从编码角度,或说从对字节信息的解释来看,文件分为:文 ...

随机推荐

  1. SpringBoot自动装配原理剖析(自己理解,有错请指出)

    注解 主类 @SpringBootApplication @EnableAutoConfiguration @Import({AutoConfigurationImportSelector.class ...

  2. 深度学习-05(tensorflow模型保存与加载、文件读取、图像分类:手写体识别、服饰识别)

    文章目录 深度学习-05 模型保存于加载 什么是模型保存与加载 模型保存于加载API 案例1:模型保存/加载 读取数据 文件读取机制 文件读取API 案例2:CSV文件读取 图片文件读取API 案例3 ...

  3. FreeSWITCH使用L16编码通信及raw数据提取

    环境:CentOS 7.6_x64 FreeSWITCH版本 :1.10.9 Python版本:3.9.12 一.背景描述 PCM(Pulse Code Modulation,脉冲编码调制)音频数据是 ...

  4. flask接口参数校验 jsonschema 的使用

    开头 flask接口开发中参数校验可以用到的方法有很多,但是我比较喜欢跟前端的js检验类似,故选用到了 jsonschema 这个参数校验的库 Demo 下面是一个比较全的参数校验的接口,日后方便参考 ...

  5. iview中时间选择器组件改变日期格式

    //改变视图的显示格式,但不会改变value的值的格式 format="yyyy-MM-dd" //改变value值的格式 @on-change="anZhuangDat ...

  6. phpstudy-sqlilabs-less-14

    题目:POST - Double Injection - Single quotes- String - with twist 和上关一模一样 uname=1"or 1=1 #&pa ...

  7. 7-8 估值一亿的AI核心代码

    题目描述: 以上图片来自新浪微博. 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 无论用户说什么,首先把对方说的话在一行中原样打印出来: 消除原文中多余空格:把相邻单词间的多个空格 ...

  8. 整合vxgPlayer使chrome支持vxg_media_player播放rtsp视频

    目前有一个关于接入海康监控进行视频融合的项目需求,按理说在前端技术发展如此迅速的今天,使用web播放一个视频应该是不算什么难事,只是万事都有意外,因很多视频厂家的监控数据都不是普通的mp4啥的,所以使 ...

  9. # 代码随想录算法训练营Day28 回溯算法|93.复原IP地址 78.子集 90.子集II

    代码随想录算法训练营 93.复原IP地址 题目链接:93.复原IP地址 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 有效的 IP 地址 正好由四个整数(每个整数位于 0 到 ...

  10. MySQL全面瓦解30:备份与恢复

    合辑地址:MySQL全面瓦解 1 为什么需要数据库备份 灾难恢复:当发生数据灾难的时候,需要对损坏的数据进行恢复和还原 需求的变更或者回滚:当需求发生变更,或者需要回滚到之前的版本时,数据库备份也显得 ...