亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Pytest中conftest.py的用法

 更新時間:2021年06月27日 15:12:12   作者:RockChe''''s Blog  
conftest.py文件到底該如何使用呢,下面我們就來詳細了解一下conftest.py文件的特點和使用方法吧,感興趣的小伙伴們可以參考一下

前言

在之前介紹fixture的文章中,我們使用到了conftest.py文件,那么conftest.py文件到底該如何使用呢,下面我們就來詳細了解一下conftest.py文件的特點和使用方法吧

什么是conftest.py

我們之前了解了fixture,fixture可以直接定義在測試腳本中,但是有些時候,我們希望一個fixture可以被復用,這就需要對fixture進行集中管理,Pytest使用文件conftest.py集中管理固件.在復雜的項目中,可以在不同的目錄層級定義conftest.py,其作用域為其所在的目錄和子目錄,通常情況下,conftest.py@pytest.fixture()會結合使用,來實現(xiàn)全局的前后置處理。

conftest.py特點

  • conftest.py文件的名稱是固定的,不能修改
  • conftest.py與運行的用例要在同一個pakage下,并且有__init__.py文件
  • 不需要import導入conftest.py文件,pytest用例會自動識別該文件,放到根目錄下可以全局目錄調用,放在某個package下,那就在該package內(nèi)有效
  • 不同目錄可以有自己的conftest.py,一個項目中可以有多個conftest.py
  • pytest會默認讀取conftest.py里面的所有fixture,所有同目錄測試文件運行前都會執(zhí)行conftest.py文件

conftest.py用法

在我們實際的測試中,conftest.py文件需要結合fixture來使用,所以fixture中參數(shù)scope也適用conftest.py中fixture的特性,這里再說明一下

  • conftest中fixture的scope參數(shù)為session,所有的測試文件執(zhí)行前(后)執(zhí)行一次conftest.py文件中的fixture。
  • conftest中fixture的scope參數(shù)為module,每一個測試.py文件執(zhí)行前(后)都會執(zhí)行一次conftest.py文件中的fixture
  • conftest中fixture的scope參數(shù)為class,每一個測試文件中的測試類執(zhí)行前(后)都會執(zhí)行一次conftest.py文件中的fixture
  • conftest中fixture的scope參數(shù)為function,所有文件的測試用例執(zhí)行前(后)都會執(zhí)行一次conftest.py文件中的fixture

conftest.py實際案例

我們按照這樣的目錄新建一個項目

在根目錄conftestdemo下

根目錄中的conftest.py文件中,一般寫全局的fixture,比如登錄

conftest.py

import pytest


@pytest.fixture(scope="session")
def login():
    print("***登錄成功,返回用戶名***")
    name = "rockche"
    yield name
    print("***退出登錄***")


@pytest.fixture(autouse=True)
def get_name(login):
    name = login
    print(f"--每個用例都調用外層fixiture:打印用戶name:{name}--")

根目錄下的測試用例

test_1.py

def test_get_name(login):
    name = login
    print("***基礎用例:獲取用戶name***")
    print(f"用戶名:{name}")

運行conftestdemo下的所有用例

run.py

import pytest

if __name__ == '__main__':
    pytest.main(["-s", "../conftestdemo/"])

test_baidu目錄下

配置針對baidu網(wǎng)站的測試用例獨有的fixture

conftest.py

import pytest


@pytest.fixture(scope="module")
def open_baidu(login):
    name = login
    print(f"用戶 {name} 打開baidu")

test_case1.py

def test_case2_01(open_baidu):
    print("搜索pytest")


def test_case2_02(open_baidu):
    print("搜索博客園")

test_cnblogs目錄下

沒有__init__.py文件也沒有conftest.py文件

test_case1.py

def test_no_fixture(login):
    print("沒有__init__文件,直接進入cnblogs", login)

test_taobao目錄下

配置針對taobao網(wǎng)站的測試用例獨有的fixture

conftest.py

import pytest


@pytest.fixture(scope="function")
def open_taobao(login):
    name = login
    print(f"用戶 {name} 進入淘寶")

test_case1.py

class TestTaobao:
    def test_case1_01(self, open_taobao):
        print("選購商品")

    def test_case1_02(self, open_taobao):
        print("進入結算界面")

運行run.py

到此這篇關于Pytest中conftest.py的用法的文章就介紹到這了,更多相關Pytest conftest.py內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python字典和列表性能之間的比較

    Python字典和列表性能之間的比較

    今天給大家介紹的是Python列表和字典的相關知識,文中對Python字典和列表的性能作了充分的比較,好奇的小伙伴們一起來看看吧,需要的朋友可以參考下
    2021-06-06
  • wxPython繪圖模塊wxPyPlot實現(xiàn)數(shù)據(jù)可視化

    wxPython繪圖模塊wxPyPlot實現(xiàn)數(shù)據(jù)可視化

    這篇文章主要為大家詳細介紹了wxPython繪圖模塊wxPyPlot實現(xiàn)數(shù)據(jù)可視化,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Python模擬實現(xiàn)高斯分布擬合

    Python模擬實現(xiàn)高斯分布擬合

    當我們繪制一個數(shù)據(jù)集(如直方圖)時,圖表的形狀就是我們所說的分布,最常見的連續(xù)值形狀是鐘形曲線,也稱為高斯分布或正態(tài)分布,下面我們就來利用Python模擬實現(xiàn)一下高斯分布吧
    2023-12-12
  • 使用Python實現(xiàn)簡單的人臉識別功能(附源碼)

    使用Python實現(xiàn)簡單的人臉識別功能(附源碼)

    Python中實現(xiàn)人臉識別功能有多種方法,依賴于python膠水語言的特性,我們通過調用包可以快速準確的達成這一目的,本文給大家分享使用Python實現(xiàn)簡單的人臉識別功能的操作步驟,感興趣的朋友一起看看吧
    2021-12-12
  • Python使用ffmpeg實現(xiàn)將WebM文件轉換為MP4文件

    Python使用ffmpeg實現(xiàn)將WebM文件轉換為MP4文件

    這篇文章主要介紹了Python如何使用wxPython庫創(chuàng)建一個簡單的GUI應用程序,可以實現(xiàn)將WebM文件轉換為MP4文件,文中的示例代碼講解詳細,感興趣的可以動手嘗試一下
    2023-08-08
  • Python中的引用和拷貝淺析

    Python中的引用和拷貝淺析

    這篇文章主要介紹了Python中的引用和拷貝淺析,本文同時講解了深拷貝和淺拷貝、引用計數(shù)和垃圾回收等內(nèi)容,需要的朋友可以參考下
    2014-11-11
  • Python將字庫文件打包成可執(zhí)行文件的常見方法

    Python將字庫文件打包成可執(zhí)行文件的常見方法

    在 Python 打包時,如果你想將字庫文件一起打包成一個可執(zhí)行文件,有幾種常見的方法,具體取決于你使用的打包工具,下面就跟隨小編一起了解下具體的實現(xiàn)方法吧
    2025-05-05
  • Python中*args和**kwargs的作用

    Python中*args和**kwargs的作用

    *args和**kwargs,以及單獨的*,**到底是啥作用呢?原理是啥呢?讀完這篇文章你就徹底明白了,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • 在python里協(xié)程使用同步鎖Lock的實例

    在python里協(xié)程使用同步鎖Lock的實例

    今天小編就為大家分享一篇在python里協(xié)程使用同步鎖Lock的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • 5個很好的Python面試題問題答案及分析

    5個很好的Python面試題問題答案及分析

    這篇文章主要介紹了5個很好的Python面試題問題答案及分析,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01

最新評論