pytest入門到放棄7--fixture之 autouse 引數
阿新 • • 發佈:2020-08-19
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 登入系統... . 關閉webdriver2 passed in 0.07s