Ich arbeite an einem Django-Mehrweg-Paket, das mit mehreren Projekten zu verwenden planen. Ich habe pytest verwendet, um Testsuite zu bauen, ich habe parametrisiert geholfen, in Pytest geholfen, einen einzelnen Test mit mehrfachen Konfiguration zu laufen.parametrieren Testen mit Django-Einstellungen
Doch würde Ich mag alle meine Tests mit unterschiedlichen Einstellungen laufen Kombinationen
available_backends = [
'django_profile.auth_backends.drf.RestFramework',
'django_profile.auth_backends.kong.Kong',
]
def pytest_generate_tests(metafunc):
# if 'stringinput' in metafunc.fixturenames:
if 'auth_backend' in metafunc.fixturenames:
metafunc.parametrize(
'auth_backend',
available_backends
)
@pytest.fixture(params=['auth_backend', ])
def auth_backend(request, settings):
settings.DJANGO_PROFILE_AUTH_BACKEND = request.auth_backend
return settings
ich mit dem obigen Ansatz experimentiert, aber das bedeutet auch, muss ich auth_backend
zu jedem Testfall hinzuzufügen, ich weiß nicht glaube, das ist ideal. Kann mir jemand einen Weg empfehlen, alle meine Tests mit verschiedenen Einstellungskombinationen durchzuführen?
Grüße
Nicht wirklich, das macht den Job nicht und es wird weiterhin alle Tests benötigen, um auth_backend Parameter zu übergeben –