Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2925 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?


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
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-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR