Ho due semplici configurazioni di prova e sto provando a raggrupparle in un apparecchio e voglio che la funzione di test passi nei "parametri" all'apparecchio.I parametri passati al dispositivo pytest possono essere passati come variabili?
Ecco un esempio forzato, per spiegare la mia domanda. Dire che ho il seguente dispositivo pytest:
@pytest.fixture(scope="module", params=['param1','param2'])
def myFixture(request):
if request.param == 'param1':
p = 5
elif request.param == 'param2':
p = 10
return p
# would like to set request.param = ['param1'] for myFixture
def test_madeup(myFixture):
assert myFixture == 5
# would like to set request.param = ['param2'] for myFixture
def test_madeup2(myFixture):
assert myFixture == 10
Posso fare in modo che i params sopra sono passati come un input per la funzione test_madeup
? Quindi, qualcosa di simile al seguente:
@pytest.fixture(scope="module", params=fixtureParams)
def myFixture(request):
if request.param == 'param1':
return 5
elif request.param == 'param2':
return 10
def test_madeup(myFixture, ['param1']):
assert myFixture == 5
Quanto sopra, ovviamente, non funziona. Il caso reale è un po 'più complesso, ma voglio solo sapere se riesco a passare il all'apparecchio dalla funzione test_madeup
.