Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1496 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  tests unitaires & persistence d'objets en mémoire [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

tests unitaires & persistence d'objets en mémoire [résolu]

n°2148554
suizokukan
Posté le 08-07-2012 à 08:44:24  profilanswer
 

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 :

Code :
  1. python -m unittest test1.py
  2. python -m unittest test2.py
  3. ...

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 cité 1 fois
Message édité par suizokukan le 09-07-2012 à 10:53:10

---------------
rule #1 : trust the python
mood
Publicité
Posté le 08-07-2012 à 08:44:24  profilanswer
 

n°2148556
masklinn
í dag viðrar vel til loftárása
Posté le 08-07-2012 à 10:28:31  profilanswer
 

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 :

Code :
  1. python -m unittest test1.py
  2. python -m unittest test2.py
  3. ...

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.


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?


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°2148605
suizokukan
Posté le 09-07-2012 à 10:52:43  profilanswer
 

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.


---------------
rule #1 : trust the python

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  tests unitaires & persistence d'objets en mémoire [résolu]

 

Sujets relatifs
Automatiser les tests d'une IHMQuestionnaire pour mémoire de fin d'année sur Symfony2
Analyser la mémoire vive[qt] timer dans 2 objets de même classe
erreur d'allocation mémoire dans une application console C++Besoin d'aide pour reprogrammé une mémoire ST62T15B6
[C][Gnu] info utilisation memoire, processeur et swap [résolu]Excel - Problème de suppression d'onglets si objets présents
Poo avec php, interaction entre objetsmini-mémoire artificielle
Plus de sujets relatifs à : tests unitaires & persistence d'objets en mémoire [résolu]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)