【问题标题】:Testing with Django: stuck at test database creation使用 Django 进行测试:卡在测试数据库创建中
【发布时间】:2018-03-25 15:18:46
【问题描述】:

我在为我的应用程序运行测试时遇到了一些问题,我设法在this previous post 中解决了这些问题。

现在执行 python manage.py test 确实没有引发任何错误,但它在创建数据库时卡住了:

当测试数据库不存在时,它会创建,正如我在 pgAdmin 中看到的那样,但它会卡在进程中并显示以下消息:

Creating test database for alias 'default'...

它永远卡在这里,所以当我手动完成该过程并再次运行test 时,它说数据库存在并提示我要么删除它并重新创建,要么取消该过程。我输入“是”,该过程再次被这条消息卡住:

Destroying old test database 'default'...

打开 pgAdmin 后,我无法立即看到任何新的 test_dbname 数据库,但如果我关闭并再次打开它,我可以看到 test_dbname,但 test 任务只是卡在那里并且没有通过...

解决此问题的方法是this solution,禁用迁移。这样,它就不会再被这些消息卡住,并且会运行默认测试。

.
----------------------------------------------------------------------
Ran 1 test in 0.002s

OK

但是,这似乎是一个糟糕的解决方案和作弊。运行测试时必须有充分的理由运行迁移,所以我认为没有充分的理由禁用它们。

【问题讨论】:

  • 您使用的是什么类型的数据库?
  • @SamBobel 我正在使用 PostgreSQL
  • 您是否以高详细度运行它?它很可能会卡在您的一个迁移中,这会告诉您是哪一个。

标签: python django migration django-1.8


【解决方案1】:

尝试运行python manage.py test --verbosity=2。这会告诉你它卡在哪里的确切位置,你可以从那里开始。

【讨论】:

    猜你喜欢
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    • 2022-08-02
    • 2020-11-17
    • 2012-04-20
    • 1970-01-01
    • 2019-04-18
    • 1970-01-01
    相关资源
    最近更新 更多