1

如何使用 pdb 交互式调试器进入正在运行的测试?

这是测试:

class UserTestCase(TestCase):
  def test_register_should_create_UserProfile(self):
    c = Client()
    response = c.post('/account/register/', {u'username': [u'john'], u'email': [u'john@beatles.com'], 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())

当我尝试运行测试时:
$ python manage.py test

测试数据库已创建。进度点“。” 随着测试的通过,屏幕上开始出现。然后进程停止。

我从来没有在终端窗口中显示 pdb> 提示符。

如何让 pdb 正常工作?

4

1 回答 1

1

您是否尝试过 ipdb 而不是 vanilla pdb?我使用 ipdb 并且您尝试做的工作正常。

或者,作为后备,为什么不在返回响应之前尝试在您正在测试的方法中调用 pdb 呢?

于 2010-02-24T14:09:40.817 回答