主頁(yè) > 知識(shí)庫(kù) > pytest conftest.py文件的使用講解

pytest conftest.py文件的使用講解

熱門(mén)標(biāo)簽:汕頭電商外呼系統(tǒng)供應(yīng)商 鄭州智能外呼系統(tǒng)中心 賓館能在百度地圖標(biāo)注嗎 云南地圖標(biāo)注 北京外呼電銷(xiāo)機(jī)器人招商 crm電銷(xiāo)機(jī)器人 400電話 申請(qǐng) 條件 電銷(xiāo)機(jī)器人 金倫通信 南京crm外呼系統(tǒng)排名

一、conftest.py的特點(diǎn)

1、可以跨.py文件調(diào)用,有多個(gè).py文件調(diào)用時(shí),可讓conftest.py只調(diào)用了一次fixture,或調(diào)用多次fixture

2、conftest.py與運(yùn)行的用例要在同一個(gè)pakage下,并且有__init__.py文件

3、不需要import導(dǎo)入 conftest.py,pytest用例會(huì)自動(dòng)識(shí)別該文件,放到項(xiàng)目的根目錄下就可以全局目錄調(diào)用了,如果放到某個(gè)package下,那就在該package內(nèi)有效,可有多個(gè)conftest.py

4、conftest.py配置腳本名稱是固定的,不能改名稱

5、conftest.py文件不能被其他文件導(dǎo)入

6、所有同目錄測(cè)試文件運(yùn)行前都會(huì)執(zhí)行conftest.py文件

二、conftest.py的使用場(chǎng)景

1、每個(gè)接口需共用到的token

2、每個(gè)接口需共用到的測(cè)試用例數(shù)據(jù)

3、每個(gè)接口需共用到的配置信息

三、conftest.py的生效范圍

1、比如下面的示例,我的conftest文件在pytest2的目錄下,那么pytest2這個(gè)目錄下的所有的城市用例都可以使用conftest文件

2、比如下面的示例的,我的conftest文件在test_suit_01目錄下,那么test_suit_01目錄下的所有的測(cè)試用例都可以使用這個(gè)conftest文件

四、conftest.py的的scope字段

1、如果生效范圍:scope=“session”

# -*- coding:utf-8 -*-
import pytest
from lib import basefunc
 
@pytest.fixture(scope="session",autouse=True)
def setup_function():
    print("執(zhí)行conftest文件")
    basefunc.delfile()
    yield
    print("執(zhí)行conftest文件")
    basefunc.delfile()

那么,在該目錄下的所有的測(cè)試用例只會(huì)執(zhí)行一次

在所有的用例開(kāi)始前會(huì)執(zhí)行yield前面的代碼

在所有的用例結(jié)束后會(huì)執(zhí)行yield后面的代碼

2、如果生效范圍:scope=“module”

# -*- coding:utf-8 -*-
import pytest
from lib import basefunc
 
@pytest.fixture(scope="module",autouse=True)
def setup_function():
    print("執(zhí)行conftest文件")
    basefunc.delfile()
    yield
    print("執(zhí)行conftest文件")
    basefunc.delfile()

那么,在該目錄下的每個(gè)py文件會(huì)執(zhí)行一次

在每個(gè)py文件中的用例開(kāi)始前會(huì)執(zhí)行yield前面的代碼

在每個(gè)py文件中的用例結(jié)束后會(huì)執(zhí)行yield后面的代碼

3、如果生效范圍:scope=“class”

# 生效的范圍,類(lèi)級(jí)別,每個(gè)類(lèi)才會(huì)執(zhí)行一次
@pytest.fixture(scope="class",autouse=True)
def setUp():
    print("在每個(gè)方法前執(zhí)行")
    yield
    print("在每個(gè)方法后執(zhí)行")

那么,在該目錄下的每個(gè)類(lèi)會(huì)執(zhí)行一次

在每個(gè)類(lèi)的用例開(kāi)始前會(huì)執(zhí)行yield前面的代碼

在每個(gè)類(lèi)的用例結(jié)束后會(huì)執(zhí)行yield后面的代碼

4、如果生效范圍:scope=“function”

@pytest.fixture(scope="function",autouse=True)
def setUp():
    print("在每個(gè)方法前執(zhí)行")
    yield
    print("在每個(gè)方法后執(zhí)行")

那么,在該目錄下的每個(gè)測(cè)試函數(shù)會(huì)執(zhí)行一次

在每個(gè)測(cè)試用例開(kāi)始前會(huì)執(zhí)行yield前面的代碼

在每個(gè)測(cè)試用例結(jié)束后會(huì)執(zhí)行yield后面的代碼

以上就是pytest的conftest.py文件的使用講解的詳細(xì)內(nèi)容,更多關(guān)于pytest conftest.py文件的使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • python pytest進(jìn)階之conftest.py詳解
  • Pytest中conftest.py的用法

標(biāo)簽:西寧 梅州 錫林郭勒盟 文山 石家莊 懷化 浙江 昆明

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pytest conftest.py文件的使用講解》,本文關(guān)鍵詞  pytest,conftest.py,文件,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pytest conftest.py文件的使用講解》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于pytest conftest.py文件的使用講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章