
Тестування Django
TestCase, test fixtures, factories, test client, coverage, TDD, mocking, інтеграція CI/CD
1Який базовий клас слід використовувати для написання модульних тестів у Django?
Який базовий клас слід використовувати для написання модульних тестів у Django?
Відповідь
django.test.TestCase — це рекомендований базовий клас для модульних тестів Django. Він успадковує unittest.TestCase і додає специфічні для Django можливості, як-от автоматичне обгортання кожного тесту в транзакцію бази даних, яка відкочується після кожного тесту, забезпечуючи ізоляцію тестів.
2Яка основна різниця між TestCase і TransactionTestCase у Django?
Яка основна різниця між TestCase і TransactionTestCase у Django?
Відповідь
TestCase обгортає тести в атомарну транзакцію, яка відкочується наприкінці, що швидше, але не дозволяє тестувати реальну транзакційну поведінку. TransactionTestCase перестворює базу даних між кожним тестом, що дозволяє тестувати явні commit і rollback, але працює повільніше.
3Як використати Django test client для симуляції GET-запиту до представлення?
Як використати Django test client для симуляції GET-запиту до представлення?
Відповідь
Django test client, доступний через self.client у TestCase, дозволяє симулювати HTTP-запити. Метод self.client.get('/url/') симулює GET-запит і повертає об'єкт Response, що містить status_code, content та context шаблону, використаного для рендерингу.
Як завантажити попередньо визначені тестові дані в Django за допомогою fixtures JSON?
Яка основна перевага використання Factory Boy порівняно з fixtures JSON?
+19 питань зі співбесід
Інші теми співбесід Django
Основи Python
Об'єктно-орієнтований Python
Основи Django
Models Django - Основи
Django Views
Шаблони Django
Форми Django
Розширені QuerySets
Автентифікація Django
Django Middleware
Django Admin
Django REST Framework
Сигнали Django
Завантаження файлів
Кешування в Django
Сесії Django
Email у Django
Безпека Django
Розгортання Django
Просунутий Django ORM
Продуктивність Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django в екосистемі мікросервісів
Користувацькі команди Django
Інтернаціоналізація Django
Патерни проєктування Django
Django Async та ASGI
Settings та конфігурація для production
Спостережуваність і моніторинг
Опануй Django для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно