tests unitaires & persistence d'objets en mémoire [résolu] - Python - Programmation
Marsh Posté le 08-07-2012 à 10:28:31
suizokukan a écrit : Bonjour à tous. Je travaille avec Python 3.x. Mes tests unitaires sont regroupés en de nombreux fichiers (disons test1.py, test2.py, ...). Je les lance à l'aide d'un script qui exécute d'abord :
Il se trouve que test1.py fait appel à une classe possédant un attribut statique et modifie cet attribut. Quand je lance test2.py, je récupère l'attribut tel que l'a modifié test1.py. |
Va faloir poster une réduction du problème, parce-que tel que décrit là c'est pas possible sauf à avoir test1.py qui fait sa modif à l'import (dégueu) et test2 qui provoque l'import de test1 (également dégueu).
Je tiens également à noter qu'avoir un script de lancement est un peu une perte de temps, pourquoi ne pas utiliser unittest2, nose ou py.test?
Marsh Posté le 09-07-2012 à 10:52:43
Merci à Masklinn pour sa réponse, très rapide. Je n'arrive pas à reproduire le problème à quelque échelle que ce soit. J'ai donc dû me tromper, désolé pour le flood.
Merci pour les références à unittest2, ... que je ne connaissais pas.
Marsh Posté le 08-07-2012 à 08:44:24
Bonjour à tous. Je travaille avec Python 3.x. Mes tests unitaires sont regroupés en de nombreux fichiers (disons test1.py, test2.py, ...). Je les lance à l'aide d'un script qui exécute d'abord :
Il se trouve que test1.py fait appel à une classe possédant un attribut statique et modifie cet attribut. Quand je lance test2.py, je récupère l'attribut tel que l'a modifié test1.py.
Juste par curiosité, j'aimerais comprendre ce comportement : jusque là je croyais que (re)lancer python remettait à 0 l'état des objets.
Merci de m'aider !
Message édité par suizokukan le 09-07-2012 à 10:53:10
---------------
rule #1 : trust the python