conftest.py 是 pytest 框架中的一个特殊文件。它允许你为测试提供自定义的配置和钩子函数。以下是 conftest.py 的主要作用:

提供全局配置:你可以在 conftest.py 中定义全局的配置,然后在多个测试文件中重用这些配置。
定义钩子函数:钩子函数是 pytest 的一个重要特性,它允许你在测试的各个阶段插入自定义的逻辑。例如,你可以在 conftest.py 中定义一个钩子函数,以便在每个测试用例执行前后做一些自定义的操作。
动态修改测试:你可以根据 conftest.py 中的某些条件动态地选择要运行的测试用例或修改它们的参数。
插件和扩展:conftest.py 是 pytest 插件和扩展的理想位置。你可以在 conftest.py 中编写自定义的插件或扩展,以扩展 pytest 的功能。
控制测试环境:通过 conftest.py,你可以控制测试环境的设置和清理,例如设置环境变量、创建临时文件等。

conftest.py的作用域
在根目录创建conftest.py文件,作用范围为所有测试模块
在单独测试目录中创建conftest.py文件,作用范围为该目录
测试根目录和子目录中都有conftest.py文件,且存在同名fixture,则在子目录下的测试用例使用的是子目录conftest.py中的fixture
总结来说,conftest.py文件可以作用于同级以及以下的模块。

conftest.py的特点
conftest.py的文件名是固定的,不能修改
可以通过conftest.py实现共享fixture
conftest.py需要放到包内,即文件夹必须有__init__.py文件
conftest.py文件中的fixture和自定插件在使用时不需要import,pytest会自动查找

pytest框架中conftest.py的作用的更多相关文章

  1. Pytest框架中,conftest.py文件的作用?

    conftest.py文件,它主要是实现fixture共享的. 第一,conftest.py文件当中,它储存的都是fixture,就是给用例提供做前置准备工作和后置清理工作的一个东西: 第二,conf ...

  2. pytest进阶之conftest.py

    前言 前面几篇随笔基本上已经了解了pytest 命令使用,收集用例,finxture使用及作用范围,今天简单介绍一下conftest.py文件的作用和实际项目中如是使用此文件! 实例场景 首先们思考这 ...

  3. python模块中__init__.py的作用

    基本概念先上结论举例解释实验一:不包含__init__.py实验二:A中包含__init__.py实验三:A.A_A中也包含__init__.py进阶基本概念概念 解释import 即导入,方式就是在 ...

  4. python包中__init__.py的作用

    1.__init__.py定义包的属性和方法 一般为空文件,但是必须存在,没有__init__.py表明他所在的目录只是目录不是包 2.导入包的时候使用 例如有一个test目录,test下有xx1.p ...

  5. python中__init__.py的作用、module和package

    控制包的导入行为: 1.声明当前文件是一个可导入的包: 2.如果当下包下有多个.py文件使用__ all__ = [ '模块名'],也就是form XXX import YYY module和pack ...

  6. Spring框架中<mvc:default-servlet-handler/>的作用

    优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...

  7. Django框架中settings.py注释

    1 # coding:utf8 2 """ 3 Django settings for DjangoTest project. 4 5 Generated by 'dja ...

  8. 『德不孤』Pytest框架 — 14、Pytest中的conftest.py文件

    目录 1.conftest.py文件介绍 2.conftest.py的注意事项 3.conftest.py的使用 4.不同位置conftest.py文件的优先级 5.conftest.py中Fixtu ...

  9. pytest框架之fixture前置和后置

    一.conftest.py 定义公共的fixture,多个测试类中都可以调用 pytest提供了conftest.py文件,可以将fixture定义在此文件中 运行测试用例时,不需要去导入这个文件,会 ...

  10. pytest框架增加log打印(包括pytest的执行结果、自定义的log信息)

    前言: 之前同事在跑脚本的时候报错了,发现没法把需要的log信息打印出来,我这边定位问题比较麻烦,所以增加了log的打印.这个问题之前已经处理过了,本来以为是小问题,结果今天又要用到这个小技巧的时候居 ...

随机推荐

  1. KMP字符串对比算法及next数组计算

    (注:该贴主要运用python实现该算法) 先谈谈KMP算法吧.KMP算法的全称是Knuth-Morris-Pratt 算法,它是用来进行字符串查找,即在某个主字符串里面找到某个特定子字符串.但是好像 ...

  2. sqoop1.4.7完全支持Hadoop3.x, Hive3.x Hbase2.x

    已经修改好 保存至云盘 自己下载 花了时间的,记得关注我... 链接:https://pan.xunlei.com/s/VNe6P6Tm1A9Q-RG5GByN08rdA1# 提取码:5nke 复制这 ...

  3. Background Removal obs

    Background Removal / Portrait Segmentation / Virtual Green-screen v0.5.16 Go to download Author roys ...

  4. tmai

    天猫精灵技能应用平台合作协议 发布日期:2020年03月18日 更新日期:2021年02月01日 鉴于您(语音技能.小程序或应用程序APP等的制作.提供或开发者)希望入驻或与天猫精灵技能应用平台(又称 ...

  5. python-手机自动化

    摘取:https://www.byhy.net/tut/auto/appium/01/ 用途和特点 Appium 是一个移动 App (手机应用)自动化工具. 手机APP 自动化有什么用? 自动化完成 ...

  6. 用go封装一下临时token

    用go封装一下临时token 本篇为用go设计开发一个自己的轻量级登录库/框架吧的临时token篇,会讲讲临时token的实现,给库/框架增加新的功能. Github:https://github.c ...

  7. 20.2 OpenSSL 非对称RSA加解密算法

    RSA算法是一种非对称加密算法,由三位数学家Rivest.Shamir和Adleman共同发明,以他们三人的名字首字母命名.RSA算法的安全性基于大数分解问题,即对于一个非常大的合数,将其分解为两个质 ...

  8. JS深入之内存详解,数据结构,存储方式

    理解了本文,就知道深拷贝和浅拷贝的底层,了解赋值的底层原理. 可以结合另一篇文章一起食用:深拷贝与浅拷贝的区别,实现深拷贝的方法介绍. 以下是正文: 栈数据结构 栈的结构就是后进先出(LIFO),如果 ...

  9. JUC并发编程学习(五)集合类不安全

    集合类不安全 List不安全 单线程情况下集合类和很多其他的类都是安全的,因为同一时间只有一个线程在对他们进行修改,但是如果是多线程情况下,那么集合类就不一定是安全的,可能会出现一条线程正在修改的同时 ...

  10. 沫沫漫画网Js逆向分析爬取全站资源入库处理图片合并

    网站分析 打开目标网站:https://www.momomh.com/ 选择一部漫画作为分析对象:<渴望:爱火难耐> 进到漫画详情页这里,发现并没有需要逆向分析.直接可以获取漫画信息.随便 ...