Django

Django Testen

TestCase, test fixtures, factories, test client, coverage, TDD, mocking, CI/CD-integratie

22 gespreksvragen·
Mid-Level
1

Welke basisklasse moet worden gebruikt om unit tests in Django te schrijven?

Antwoord

django.test.TestCase is de aanbevolen basisklasse voor Django-unit tests. Het erft van unittest.TestCase en voegt Django-specifieke functies toe, zoals het automatisch verpakken van elke test in een databasetransactie die na elke test wordt teruggedraaid, wat testisolatie waarborgt.

2

Wat is het belangrijkste verschil tussen TestCase en TransactionTestCase in Django?

Antwoord

TestCase verpakt tests in een atomaire transactie die aan het einde wordt teruggedraaid, wat sneller is maar het testen van echt transactioneel gedrag verhindert. TransactionTestCase maakt de database tussen elke test opnieuw aan, waardoor expliciete commits en rollbacks getest kunnen worden, maar het is langzamer.

3

Hoe gebruik je de Django test client om een GET-verzoek aan een view te simuleren?

Antwoord

De Django test client, toegankelijk via self.client in een TestCase, maakt het simuleren van HTTP-verzoeken mogelijk. De methode self.client.get('/url/') simuleert een GET-verzoek en retourneert een Response-object met de status_code, content en de template-context die voor het renderen is gebruikt.

4

Hoe laad je vooraf gedefinieerde testdata in Django met JSON-fixtures?

5

Wat is het belangrijkste voordeel van Factory Boy ten opzichte van JSON-fixtures?

+19 gespreksvragen

Beheers Django voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis