1
我想設置py.test,使得燈具B可以返回給定燈具A的值的可變數量的參數。讓我以當前實現爲例進行說明。對於三個對象中的每一個,我想測試可變數量的屬性。具有可變數量值的燈具取決於輸入
@pytest.fixture(params=[Object1(), Object2(), Object3()])
def my_object(request):
return request.param
def test_keys(my_object):
for key in my_object.valid_keys:
assert getattr(my_object, key) > 0, "mock test failed"
上面實施的功能,但它是不容易從其中valid_keys
進行了測試測試輸出看。如果其中一個測試失敗,後續測試將不會執行。理想情況下,我想要一個設置如下。
@pytest.fixture(params=[Object1(), Object2(), Object3()])
def my_object(request):
return request.param
@pytest.fixture
def valid_key(my_object):
# Return each valid key separately for each input object
def test_keys(my_objects, valid_key):
assert getattr(my_object, valid_key) > 0, "mock test failed"
這種結構可以讓我更容易地分析我的測試中,觀察範圍,確保所有的測試都獨立運行等
是的,不幸的是,有效密鑰的數量是可變的。 –