1. 程式人生 > 實用技巧 >pytest入門到放棄7--fixture之 autouse 引數

pytest入門到放棄7--fixture之 autouse 引數

1、原始碼解釋如下:
:arg autouse: if True, the fixture func is activated for all tests that can see it. If False (the default) then an explicit reference is needed to activate the fixture.
# autouse=True 時,自動使用 fixture
#
autouse=False 時,則呼叫函式名來實現 fixture

2、呼叫 fixture 的三種方式
  • 函式內直接傳 fixture 的函式引數名稱
  • 使用裝飾器 @pytest.mark.usefixtures('func_name')
  • 定義fixture引數 autouse=True
3、autouse=True 自動使用 fixture(在conftest中編輯,作用範圍為在同一級目錄中全部自動呼叫):
# File  : conftest.py
# IDE   : PyCharm

import pytest

@pytest.fixture(autouse=True)
def automaticallyUs():
    print('\n例項化webdriver')
    yield
    print('\n關閉webdriver
')
在同一級目錄中新建 .py 檔案:
# File  : test_demo_9.py
# IDE   : PyCharm

def test_1():
    print('\n開啟百度...')

def test_2():
    print('\n登入系統...')
執行指令碼:
E:\personal\python38\python.exe E:/personal/GitWorkSpace/pytest_basic/main.py

例項化webdriver

開啟百度...
.
關閉webdriver

例項化webdriver

登入系統...
.
關閉webdriver

2 passed in 0.07s