首页 > 其他分享 >pytest框架中conftest.py的作用

pytest框架中conftest.py的作用

时间:2023-12-14 09:48:16浏览次数:21  
标签:插件 自定义 py conftest pytest 测试

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会自动查找

标签:插件,自定义,py,conftest,pytest,测试
From: https://www.cnblogs.com/luoshuai7394/p/17898900.html

相关文章

  • 12.14——python类
    classEmployee:  up=0.1    def__init__(self,name,salary):    #构造器__init__    self.username=name#实例变量    self.salary=salary1          defup_salary(self):#self表示......
  • 使用Python和Qt6(PySide6)创建GUI应用1简介
    1简介在本书从GUI开发的基本原理逐步过渡到使用PySide6创建您自己的、功能齐全的桌面应用程序。1.1GUI简史图形用户界面(GUIGraphicalUserInterface)历史悠久,可追溯到20世纪60年代。斯坦福大学的NLS(ON-Line系统引入了鼠标和窗口概念,并于1968年首次公开展示。随后,施乐公司......
  • python 将 .pdf 文件转为 .md
    方法一:工具网站https://pdf2md.morethan.io/方法二:代码手动转换pipinstallaspose-wordsdoc=aw.Document(r"pdf文件路径\xxx.pdf")doc.save("Output.md")来源:https://products.aspose.com/words/zh/python-net/conversion/—————————————......
  • python之tkinter的grid布局
    grid将界面划分为二维网格,由行和列分割,从上到下,左到右编号,最左上角是(0,0),依次类推。也可结合frame使用,形成更加复杂的界面。语法:grid(argus……)参数:参数属性举例或备注                             row定位组件在第几行 column定位组件在第几列......
  • 使用java调用Python脚本
    通过使用java中的ProcessBuilder类,可以实现在java代码中调用外部的python代码的功能,以下为具体代码:importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassJavaCallPython{publicstaticvoidmain(String[]args)......
  • ArcPy批量计算多张栅格图像各像元的平均数值
      本文介绍基于Python中ArcPy模块,对大量长时间序列栅格遥感影像文件的每一个像元进行多时序平均值的求取。  在遥感应用中,我们经常需要对某一景遥感影像中的全部像元的像素值进行平均值求取——这一操作很好实现,基于ArcMap软件或者简单的Python代码就可以实现;但有时候,我们会需......
  • Python Numpy 数据可视化
    ​ 1、安装MatplotlibMatplotlib是一个功能强大且受欢迎的Python库,用于生成2D图表和图形。它因其灵活性、广泛的功能和用户友好的界面而广泛用于各种科学、工程和数据分析应用。可以通过pip安装,命令如下,pipinstallmatplotlib或python3-mpipinstallmatplotl......
  • python 的 多个异步库如何兼容
    概述异步编程的重要性和不同的异步库介绍异步编程是现代软件开发中的重要概念,特别是在处理IO密集型任务时,它的作用尤为明显。不同的异步库为Python提供了多种不同的方式来实现异步编程。这些异步库包括但不限于asyncio、tornado、gevent等等。在本文中,我们将介绍这些不同的异步库及......
  • python学习笔记1(你好,python)
    虽然一直不会python,但也了解一些python的场景,比如爬取数据、数据挖掘、ai,今天开始从B站上系统学习一下今日学习笔记:1、python优点:易于读写和学习,英文描述方式专注于解决问题,代码少、有生产力易调试,解释型语言,只显示第一个错误开源免费,标准库很强大,社区也很强大2、缺点:内存占用率高,......
  • Python 潮流周刊第一季完结(1~30)
    你好,我是猫哥。庆祝Python潮流周刊在几天前顺利更新到了第30期!我觉得这是一个很有意义的时间节点,不太短也不漫长,很适合作一个小小的总结。我打算今后每30期作为一季,都给大家做一些总结和分享。首先,给大家公开一些数据吧。本季时间从2023.05.13到2023.12.09,共210天......