Menjalankan Pangkalan Data Ujian Django dalam Memori untuk Prestasi Dipertingkat
Ujian unit dalam Django boleh menjadi proses yang memakan masa, terutamanya jika ujian melibatkan operasi pangkalan data. Keperluan berterusan untuk membina semula dan memindahkan pangkalan data boleh melambatkan proses ujian dengan ketara. Sebagai penyelesaian pengoptimuman, pertimbangkan untuk menyimpan keseluruhan pangkalan data ujian dalam memori untuk menghapuskan kependaman akses cakera.
Mengkonfigurasi Django untuk Pangkalan Data Dalam Memori
Django menyediakan cara yang mudah untuk gunakan pangkalan data dalam memori untuk ujian. Dengan menetapkan enjin pangkalan data kepada "sqlite3" semasa menjalankan ujian, Django akan menggunakan pangkalan data SQLite dalam memori secara automatik.
Coretan Kod untuk Versi Django Berbeza
Bergantung pada versi Django yang anda gunakan, coretan kod berikut menunjukkan cara mengkonfigurasi pangkalan data dalam memori:
Untuk versi Django sebelum 1.2:
<code class="python">if 'test' in sys.argv: DATABASE_ENGINE = 'sqlite3'</code>
Untuk Django 1.2:
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'sqlite3'}</code>
Untuk Django 1.3 dan 1.4:
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}</code>
Menggunakan Migrasi Selatan dengan Pangkalan Data Dalam Memori
Jika anda menggunakan Selatan untuk pemindahan pangkalan data, adalah disyorkan untuk melumpuhkan migrasi semasa ujian untuk mengelakkan kemungkinan konflik. Anda boleh melakukannya dengan menambah baris berikut pada fail tetapan ujian anda:
<code class="python">SOUTH_TESTS_MIGRATE = False</code>
Faedah Pangkalan Data Dalam Memori untuk Pengujian
Menjalankan pangkalan data ujian dalam memori menawarkan beberapa kelebihan:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mempercepatkan Ujian Django Saya dengan Pangkalan Data Dalam Memori?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!