Python 2.7.8, eclipse Kepler, module unittest undefined variable

Résolu/Fermé
Bertrand_Labevue Messages postés 18 Date d'inscription mardi 27 mai 2014 Statut Membre Dernière intervention 9 mars 2015 - 4 déc. 2014 à 10:19
Bertrand_Labevue Messages postés 18 Date d'inscription mardi 27 mai 2014 Statut Membre Dernière intervention 9 mars 2015 - 4 déc. 2014 à 15:18
Bonjour,

Je me suis connecté car j'ai rencontré un souci un peu bizarre, je ne sais pas si le problème vient de la configuration de mon poste ou d'une chose que j'aurais mal faite.

Voici mon test unitaire (enfin, la structure générée automatiquement par éclipse):

import unittest

class Test(unittest.TestCase):


    def testName(self):
        
        pass


if __name__ == "__main__":
    #import sys;sys.argv = ['', 'Test.testName']
    unittest.main()


sur la 3eme ligne, 'TestCase' est surligné en rouge: undefined variable from import: TestCase.

et si j'ouvre la console:

import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))

D:\Python27\python.exe 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)]
PyDev console: starting.
import unittest
help(unittest.TestCase)
Help on class TestCase in module unittest.case:



=> donc quand il le veut, il trouve bien la classe testunit.TestCase...

enfin, j'ai tenté d'ignorer les erreurs en bidouillant les paramètres de l'éditeur, mais j'ai quand même de grosses erreurs qui tâchent si je tente de lancer ce machin.

Quelqu'un a une idée de ce qui manque ? Merci d'avance.
A voir également:

2 réponses

Bertrand_Labevue Messages postés 18 Date d'inscription mardi 27 mai 2014 Statut Membre Dernière intervention 9 mars 2015
Modifié par Bertrand_Labevue le 4/12/2014 à 13:47
J'ajoute à ça que Numpy est à présent dans les choux....

import numpy provoque:

Traceback (most recent call last):
  File "[...]\workspace\pyTest\test\__init__.py", line 10, in <module>
    import truc.truc
  File "[...]\workspace\pyTest\lauchers\truc.py", line 15, in <module>
    import numpy
  File "D:\Python27\lib\site-packages\numpy\__init__.py", line 170, in <module>
    from . import add_newdocs
  File "D:\Python27\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "D:\Python27\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
    from .type_check import *
  File "D:\Python27\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "D:\Python27\lib\site-packages\numpy\core\__init__.py", line 46, in <module>
    from numpy.testing import Tester
  File "D:\Python27\lib\site-packages\numpy\testing\__init__.py", line 10, in <module>
    from unittest import TestCase
ImportError: cannot import name TestCase


bref, y a un truc qui ne va pas avec unittest je crois... Encore plus étrange, import numpy fonctionne en ligne de commande, mais pas avec la console d'eclipse... Et c'est le cas pour toutes les librairies qui ont besoin d'unittest pour fonctionner (astropy, scipy, etc...)
0
Bertrand_Labevue Messages postés 18 Date d'inscription mardi 27 mai 2014 Statut Membre Dernière intervention 9 mars 2015
4 déc. 2014 à 15:18
J'ai trouvé la réponse à mon problème.

Ce ***bip** de ***bip** d'Eclipse a créé un sous-dossier "unittest" dans mon workspace. Evidemment, clash avec le fichier du même nom chez Mr Python qui a abouti à ce post.

A bon entendeur pour le prochain qui aurait le même genre de souci...
0