簡體   English   中英

Pytest 會話裝置不再執行

[英]Pytest session fixtures not executed anymore

有一段時間,我在最高階 conftest.py 中運行了一個帶有以下裝置的測試套件。 此文件包含必須可用於測試套件中的每個測試的夾具。 他們在互相建立。 一個夾具需要另一個。 因此執行順序是隱含明確的。 夾具基本上產生連接所需的對象。

@pytest.fixture(scope="session")
def A():
    yield A

@pytest.fixture(scope="session")
def B(A):
    yield B

@pytest.fixture(scope="session")
def C(B):

然后在某一時刻設置不再起作用。 只執行了第一個夾具。

@pytest.fixture(scope="session")
def A():
    yield A

我們目前正在嘗試檢查究竟可能發生了什么變化,從而改變了行為。 我們嘗試更改 pytest 版本、更改 pytest.ini 文件或init .py 文件。 到目前為止,我們還沒有找到任何改變行為的原因。

有人有提示嗎?

添加autouse=True參數使燈具再次工作。

@pytest.fixture(scope="session", autouse=True)
def A():
    yield A

@pytest.fixture(scope="session", autouse=True)
def B(A):
    yield B

@pytest.fixture(scope="session", autouse=True)
def C(B):

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM