Django

Django-Testing

TestCase, Test-Fixtures, Factories, Test Client, Coverage, TDD, Mocking, CI/CD-Integration

22 Interview-Fragen·
Mid-Level
1

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.

2

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.

3

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.

4

Wie lädt man vordefinierte Testdaten in Django mithilfe von JSON-Fixtures?

5

Was ist der Hauptvorteil von Factory Boy gegenüber JSON-Fixtures?

+19 Interview-Fragen

Meistere Django für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten