pytest 的 fixture 作用域問題

xwwr發表於2024-12-19

conftest.py 檔案部分

@pytest.fixture(scope="session")
def driver(request):
    marker = request.node.get_closest_marker("device_name")
    if marker is None:
        raise ValueError("必須為測試用例提供一個 'device_name' 引數")

測試方法為

@user2ame("emulator_1")
@user3res("driver")
class TestLogin:
    def test_login(self, driver):

向大家請教一下,當我把@pytest.fixture(scope="session") 的 scope 調整為 class 時,driver 中 marker 能正確獲取到測試用例傳值 emulator_1,但是我修改為 session 後,此處 device_name 則為空了。這是因為什麼呀?小白請指教

相關文章