2 votes

Comment puis-je utiliser le débogueur avec les tests unitaires en Python avec Pycharm ?

J'ai le problème suivant :

Je fais des tests unitaires mais le souci est que je ne peux pas utiliser le débogueur. J'ai essayé de cliquer sur "Debug namefile" en mettant un point d'arrêt mais cela ne fonctionne pas. En alternative, j'ai essayé d'utiliser le décorateur suivant @override_settings(DEBUG=True) mais une fois de plus je n'ai eu aucun résultat en procédant de cette manière.

Je précise que c'est uniquement avec les tests unitaires que j'ai ce genre de problèmes. L'autre partie du code fonctionne correctement.

Pourriez-vous m'aider s'il vous plaît ?

PS : pour effectuer le test unitaire j'ai importé TestCase depuis django.test.

Un grand merci !

2voto

Pyae Points 18

J'avais le même problème avec PyCharm+Django lorsque je lançais python manage.py test depuis la ligne de commande. Je l'ai résolu en créant une nouvelle configuration pour les tests.

entrer la description de l'image ici

Principalement, vous devrez remplir "Chemin du script" (chemin vers manage.py) et "Paramètres". entrer la description de l'image ici

Ensuite, exécutez le débogage avec cette configuration et les points d'arrêt dans les tests Django fonctionneront.

0voto

Charlie 木匠 Points 486

Menu PyCharm:

Exécuter / Modifier la configuration / Ajouter un test Django / Ajouter une cible et des options.

Par exemple, voici un mapping de la ligne de commande aux champs GUI,

Exécuter juste une méthode de test

./manage.py test --keepdb animals.tests.AnimalTestCase.test_animals_can_speak

Cible: animals.tests.AnimalTestCase.test_animals_can_speak

options: --keepdb

.

Réf, https://www.jetbrains.com/help/pycharm/2020.1/run-debug-configuration-django-test.html

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