我希望能夠使用現有的測試數據庫來運行我的測試,並且在每次我想運行測試時都沒有Django創建和刪除數據庫。這可能嗎?我怎樣才能指定一個數據庫的Django測試使用,而不是讓它每次構建它?
回答
這是可能的,這裏有一個辦法:
1)定義你自己的測試運行看here怎麼看。
2)對於您的自定義測試運行看在default test runner,你可以複製和過去的代碼,只是註釋此行:connection.creation.destroy_test_db(old_name, verbosity)
負責銷燬測試數據庫,我覺得你應該把connection.creation.create_test_db(..)
線除了這樣的事情也許一試:
try:
# Create the database the first time.
connection.creation.create_test_db(verbosity, autoclobber=not interactive)
except ..: # Look at the error that this will raise when create a database that already exist
# Test database already created.
pass
3)勢必setting.py TEST_RUNNER到您的測試運行。
4)現在運行測試是這樣的:./manage.py測試
所以這看起來不錯,但我仍然需要建立連接到本地測試數據庫沒有? – 2011-01-05 21:08:05
@Ryan Detzel:我剛剛編輯了我的答案,以獲取更多細節,關於你的問題,我認爲測試數據庫上面的代碼將在第一次運行測試時創建是的,這個測試數據庫是由Django自動創建的: http://docs.djangoproject.com/zh/dev/topics/testing/?from=olddocs#the-test-database – mouad 2011-01-05 21:39:10
@mouad,我可以配置它,使它甚至不會加載燈具/沖洗它嗎? – 2013-07-16 21:35:42
誰在使用Django> = 1.8
python manage.py test --keepdb
--keepdb果脯測試運行的測試數據庫。這具有跳過創建和銷燬操作的優點,這可以大大縮短運行測試的時間,尤其是在大型測試套件中。如果測試數據庫不存在,它將在第一次運行時創建,然後爲每次後續運行保留。在運行測試套件之前,任何未應用的遷移也將應用於測試數據庫。
Django 1.6怎麼樣?有沒有類似的方法? – 2016-08-18 06:57:05
- 1. 我怎樣才能讓它幹?
- 2. 這個Javascript函數保持循環,我怎樣才能讓它運行一次?
- 3. Lua Love2D - 我怎樣才能讓它下載一個文件?
- 4. JAVAFX:我怎樣才能把它放在一個窗口而不是兩個?
- 5. 我怎樣才能讓它「git push」推送到本地倉庫?
- 6. 我怎樣才能使它動態
- 7. 我怎樣才能讓我的數據庫連接UTF8啓用
- 8. 我怎樣才能讓消息每12小時彈出一次?
- 9. 1:20的最小倍數 - 我怎樣才能讓它更快?
- 10. 我怎樣才能讓這個方法更新每次通話
- 11. 我怎樣才能每5秒檢查一次數據庫而不是凍結C#中的gui? [已解決]
- 12. Android切換按鈕只能工作一次。我怎樣才能讓它每次都有效?
- 13. 我怎樣才能讓一個按鈕,使用戶只能看到它的文字,但不是按鈕iphone sdk
- 14. execvp和我;我怎樣才能讓它爲我工作?
- 15. 我怎樣才能讓不透明的一個div而不是背景圖片?
- 16. 我怎樣才能讓Total字段只顯示一次而不是每個組的變化?
- 17. SQL Server 2008我該怎麼做才能讓它不顯示數據兩次?
- 18. 我怎樣才能把它放到一個函數中?
- 19. 我怎樣才能拆分「,」即使它有一個「,」在其中
- 20. 在PHP中,我怎麼才能創建conn到數據庫一次,並從JavaScript通過Ajax多次使用它?
- 21. 我怎樣才能得到我的數據庫的內容,而不是索引
- 22. 我怎樣才能resuse JavaScript代碼,如果它不是一個函數
- 23. 我怎樣才能讓AngularJS在每次使用數據時都重新運行一個函數?
- 24. 我怎樣才能生成git的* FILE *和它是如何的(de)構建的?
- 25. 我怎樣才能讓H1的邊距離它的容器10px?
- 26. 使用InAppSettingsKit,我怎樣才能讓它不出現在設置應用程序?
- 27. 什麼是cron?我怎樣才能使用它?
- 28. 什麼是分頁遊標?我怎樣才能使用它
- 29. 我怎樣才能展示它呢?
- 30. 我怎樣才能重構這個工廠類型的方法和數據庫調用是可測試的?
你爲什麼要這麼做?你也想測試數據庫的創建... – 2011-01-05 16:55:45
不需要花費數小時才能建立。 – 2011-01-05 17:12:51
您可以選擇不同的數據庫引擎進行測試(sqlite有更快的數據庫創建方式) – 2011-01-06 12:47:54