
Django-Testing
TestCase, Test-Fixtures, Factories, Test Client, Coverage, TDD, Mocking, CI/CD-Integration
1Welche Basisklasse sollte zum Schreiben von Unit-Tests in Django verwendet werden?
Welche Basisklasse sollte zum Schreiben von Unit-Tests in Django verwendet werden?
Antwort
django.test.TestCase ist die empfohlene Basisklasse für Django-Unit-Tests. Sie erbt von unittest.TestCase und fügt Django-spezifische Funktionen hinzu, etwa das automatische Einbetten jedes Tests in eine Datenbanktransaktion, die nach jedem Test zurückgerollt wird, um die Testisolation zu gewährleisten.
2Was ist der Hauptunterschied zwischen TestCase und TransactionTestCase in Django?
Was ist der Hauptunterschied zwischen TestCase und TransactionTestCase in Django?
Antwort
TestCase bettet Tests in eine atomare Transaktion ein, die am Ende zurückgerollt wird; das ist schneller, verhindert aber das Testen echter transaktionaler Verhaltensweisen. TransactionTestCase erstellt die Datenbank zwischen jedem Test neu und erlaubt so das Testen expliziter Commits und Rollbacks, ist aber langsamer.
3Wie verwendet man den Django Test Client, um eine GET-Anfrage an eine View zu simulieren?
Wie verwendet man den Django Test Client, um eine GET-Anfrage an eine View zu simulieren?
Antwort
Der Django Test Client, in einem TestCase über self.client zugänglich, ermöglicht das Simulieren von HTTP-Anfragen. Die Methode self.client.get('/url/') simuliert eine GET-Anfrage und gibt ein Response-Objekt zurück, das den status_code, den content und den Template-Context für das Rendering enthält.
Wie lädt man vordefinierte Testdaten in Django mithilfe von JSON-Fixtures?
Was ist der Hauptvorteil von Factory Boy gegenüber JSON-Fixtures?
+19 Interview-Fragen
Weitere Django-Interviewthemen
Python-Grundlagen
Objektorientiertes Python
Django-Grundlagen
Django Models - Grundlagen
Django Views
Django-Templates
Django-Formulare
Erweiterte QuerySets
Django-Authentifizierung
Django-Middleware
Django Admin
Django REST Framework
Django-Signale
Datei-Upload
Django Caching
Django-Sessions
Django E-Mail
Django-Sicherheit
Django-Deployment
Fortgeschrittenes Django ORM
Django-Performance
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django im Microservices-Ökosystem
Benutzerdefinierte Django-Befehle
Django-Internationalisierung
Django Design Patterns
Django Async & ASGI
Settings & Produktionskonfiguration
Observability & Monitoring
Meistere Django für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten