我正面臨pytest夾具的一個小問題,非常感謝您的幫助。Py.test夾具:在示波器夾具中使用功能夾具
我有幾個功能如下所述。爲了簡單起見,我沒有顯示實現。
@pytest.fixture()
def get_driver():
pass
@pytest.fixture()
def login(get_driver):
pass
@pytest.fixture()
def settings(login):
pass
的問題是我需要多一個(會話級別)燈具之前,我跑我的第一個測試的情況下,其不設置。 (實際上開始測試)。即轉到設置頁面並創建一些設置。 (登錄後)
現在的問題是我不能這樣做使用會話級別夾具,因爲我不能在會話級別使用功能級別的夾具。 還是可以嗎?
@pytest.fixture(scope="session")
def setup(settings):
settings.create_settings()
pass
文檔說'不'。功能級別的燈具可以使用會話級別的燈具,但不能用其他方式。我想你需要給你的情況增加更多的細節,以便我們能夠找到解決問題的辦法。 – ldiary
問題是我需要一個在第一個測試用例之前只調用一次的燈具。 (會話或模塊)。然而,問題是,我不能使用'設置'夾具,它具有與在該夾具中創建'測試數據'有關的所有功能。 –
您的'get_driver'是一個函數級別的fixture,是否意味着您正在爲每個測試函數創建一個'driver'的新實例?或者你只是檢索你將在會話範圍'setup'中使用的'driver'實例? – ldiary