3 votes

PyCharm - structure de projet pour les tests et les auto-importations

J'ai la structure de projet suivante :

dev
|\_app
  |\_package
    |\_module.py
    |\_\_\_init\_\_.py
|\_tests
  |\_test\_util.py
  |\_module\_test·py
  |\_\_\_init\_\_.py

J'ai du mal à configurer la structure du projet PyCharm pour que dans le même temps :

  • les tests se déroulent correctement
  • les auto-importations fonctionnent correctement

Si je règle ma racine de contenu sur dev, les auto-importations fonctionnent correctement, mais lorsque j'essaie d'exécuter des tests qui ont une importation comme celle-ci :

from tests.test_util import SomeUtil

J'y vais : ImportError : Aucun module nommé test_util.

Si je règle mes racines de contenu sur dev/tests et dev/app, chaque fois que j'utilise l'importation automatique (par exemple Alt+Enter), j'obtiens le résultat suivant :

from package import module

même si je m'y attendais :

from app.package import module

Comment faire pour que PyCharm comprenne correctement la structure de mon projet ? Définir des dossiers comme sources n'aide pas.

2voto

Marcin Points 67

J'ai contacté le support de PyCharm (très réactif et désireux d'aider je dois dire). Décocher "Add Content routes to PYTHONPATH" et "Add Source roots to PYTHONPATH" dans mes configurations de test a résolu mon problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X