L'optimisation des performances des tests unitaires de Django est cruciale pour des flux de travail de développement efficaces. Ceci peut être réalisé en exploitant les capacités de base de données en mémoire de SQLite en conjonction avec les paramètres de Django.
Django s'intègre de manière transparente à SQLite pour permettre l'utilisation de bases de données de mémoire à des fins de tests. En définissant le moteur de base de données sur « sqlite3 » lors de l'exécution des tests, Django utilisera automatiquement une base de données en mémoire.
Dans Django settings.py, le la configuration suivante définit le moteur de base de données sur SQLite pour les tests :
if 'test' in sys.argv: DATABASE_ENGINE = 'sqlite3'
Pour Django 1.2 et versions ultérieures :
if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'sqlite3'}
Dans Django 1.3 et 1.4, le chemin backend complet est requis :
if 'test' in sys.argv: DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}
Pour éviter que les migrations vers le Sud n'interfèrent :
SOUTH_TESTS_MIGRATE = False
En utilisant une base de données en mémoire, les performances des tests de Django s'amélioreront considérablement car la base de données n'aura plus besoin d'être reconstruite ou migrée à chaque fois. fois qu'un test est exécuté.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!