Je suis confronté à un petit problème avec les luminaires pytest, j'apprécierais votre aide.Fixation Py.test: Utiliser la fixation dans le luminaire
J'ai quelques appareils fonctionnels comme mentionné ci-dessous. pour simplifier je n'ai pas montré la mise en œuvre.
@pytest.fixture()
def get_driver():
pass
@pytest.fixture()
def login(get_driver):
pass
@pytest.fixture()
def settings(login):
pass
le problème est que je besoin d'un appareil plus (niveau de la session) qui fait la configuration avant que je lance mon premier test. (réellement commencer à tester). c'est-à-dire aller à la page des paramètres et créer quelques paramètres. (après la connexion)
maintenant le problème est que je ne peux pas faire comme cela en utilisant fixation de niveau de session, car je ne peux pas utiliser l'appareil au niveau de la fonction au niveau de la session. ou puis-je?
@pytest.fixture(scope="session")
def setup(settings):
settings.create_settings()
pass
La documentation indique «non». L'appareil au niveau de la fonction peut utiliser ceux de niveau session mais pas l'inverse. Je suppose que vous devez ajouter plus de détails à votre situation afin que nous puissions être en mesure de trouver une solution de contournement à votre problème. – ldiary
le problème est que j'ai besoin d'un luminaire supplémentaire qui n'est appelé qu'une seule fois avant le premier test. (session ou module). Cependant, le problème est que je ne peux pas utiliser le paramètre 'settings' qui a toutes les fonctions liées à la création de' data for test' dans cet appareil. –
Votre 'get_driver' est un appareil de niveau fonction, cela signifie-t-il que vous créez une nouvelle instance du' driver' pour chaque fonction de test? Ou vous récupérez simplement la même instance de 'driver' que vous utiliserez dans votre installation' setup' de votre session? – ldiary