將Django 的測試資料庫保留在記憶體中以進行快速單元測試
由於資料庫載入過程過長,許多Django 開發人員面臨著緩慢的單元測試。雖然優化程式碼至關重要,但結構化解決方案可以顯著提高測試速度。一種潛在的解決方案是將測試資料庫僅維護在記憶體中,從而消除磁碟寫入操作。
Django 的記憶體資料庫選項
Django 允許使用 MySQL 或用於測試資料庫的 SQLite。雖然 MySQL 提供了更高級的功能,但 SQLite 以其簡單性和基於記憶體的功能而聞名。
為 SQLite 的記憶體測試資料庫設定 Django
利用「測試」 ' 條件在 settings.py 檔案中設定測試期間 SQLite 的資料庫引擎。
<code class="python">if 'test' in sys.argv: DATABASE_ENGINE = 'sqlite3'</code>
不同Django 版本的相容性
根據引擎設定語法調整在您的Django 版本上:
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'sqlite3'}</code>
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}</code>
<code class="python">SOUTH_TESTS_MIGRATE = False</code>
以上是如何使用記憶體資料庫加速 Django 單元測試?的詳細內容。更多資訊請關注PHP中文網其他相關文章!