我在運行測試時遇到了一些麻煩,我設法在this previous post中解決了這些問題。使用Django進行測試:停留在創建測試數據庫
現在執行python manage.py test
不經過沒有引起任何錯誤,但它卡住在創建數據庫:
當測試數據庫不存在,它不創造,我可以在pgAdmin的看到,但它陷在與這個消息的過程:
Creating test database for alias 'default'...
它永遠在這裏卡住了,所以當我手動完成該過程,然後再次運行test
,它說的數據庫中存在,並提示我可以刪除它,創造新生活,或取消處理。 I型「是」,過程與此其它消息再次卡住:
Destroying old test database 'default'...
隨着pgAdmin的開放,我不能立即看到任何新的test_dbname
數據庫,但如果我關閉並重新打開它,我就可以了,有test_dbname
是,但test
任務只是卡在那裏,並沒有通過...
解決此問題的方法是this solution,禁用遷移。通過這種方式,它不再卡住這些消息,並且運行默認測試。
.
----------------------------------------------------------------------
Ran 1 test in 0.002s
OK
但是,這似乎是一個不好的解決方案和作弊。在運行測試時必須有一個很好的理由,因此我沒有看到禁用它們的好理由。
你正在使用什麼類型的數據庫? –
@SamBobel我正在使用PostgreSQL – dabadaba
你是否在高度冗長的情況下運行它?它最有可能陷在你的一個遷移中,並且會告訴你哪一個遷移。 –