Pangkalan Data Ujian Dalam Memori untuk Pengoptimuman Prestasi Django
Ujian unit Django boleh mengalami masa pelaksanaan yang perlahan, yang boleh menjadi kesesakan yang ketara semasa pembangunan. Untuk menangani isu ini, pertimbangkan untuk menjalankan pangkalan data ujian sepenuhnya dalam ingatan. Ini menghapuskan overhed permulaan pangkalan data dan migrasi, menghasilkan pelaksanaan ujian yang jauh lebih pantas.
Pangkalan Data Memori MySQL dan SQLite
MySQL tidak menawarkan pangkalan data dalam memori khusus enjin. Walau bagaimanapun, SQLite menyediakan pilihan yang ringan dan cekap untuk operasi pangkalan data dalam memori.
Mengkonfigurasi Django untuk Pangkalan Data Memori
Untuk mengkonfigurasi Django bagi pangkalan data dalam memori, tetapkan enjin pangkalan data kepada 'sqlite3' apabila menjalankan ujian. Ini boleh dicapai dengan mengubah suai fail 'settings.py' seperti berikut:
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'sqlite3'}</code>
Dalam Django 1.3 dan 1.4, gunakan yang berikut:
<code class="python">if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}</code>
Migrasi Selatan
Jika anda menggunakan Selatan untuk pemindahan pangkalan data, lumpuhkan migrasi semasa ujian dengan menetapkan 'SOUTH_TESTS_MIGRATE' kepada 'False':
<code class="python">SOUTH_TESTS_MIGRATE = False</code>
Faedah Pangkalan Data Ujian Dalam Memori
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mempercepatkan Ujian Unit Django dengan Pangkalan Data Dalam Memori?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!