Comment puis-je entrer dans un test en cours d'exécution avec le débogueur interactif pdb?Pourquoi ne puis-je pas entrer dans un test en cours d'exécution avec le débogueur interactif pdb?
C'est le test:
class UserTestCase(TestCase):
def test_register_should_create_UserProfile(self):
c = Client()
response = c.post('/account/register/', {u'username': [u'john'], u'email': [u'[email protected]'], u'bnewaccount': [u'Signup']})
self.assertEqual(response.status_code, 302)
import pdb; pdb.set_trace()
user = User.objects.get(username ='john')
self.assertTrue(user.get_profile())
Lorsque je tente d'exécuter les tests:
$ test python manage.py
La base de données de test est créé. Les points de progrès '.' commencer à progresser à travers l'écran à mesure que les tests passent. Alors le progrès s'arrête.
Je ne suis jamais montré une invite pdb> dans la fenêtre du terminal.
Comment puis-je faire fonctionner correctement pdb?
iPdb fonctionne. Je vais l'utiliser comme mon débogueur par défaut. – BryanWheelock
Il ne devrait y avoir aucune différence entre ipdb et pdb dans l'exemple d'utilisation. Ils devraient tous les deux bien fonctionner. J'aurais commencé en déplaçant l'importation vers la première ligne du test au lieu de changer d'outils. Les outils de commutation peuvent masquer un problème différent. – istruble