Тестирование в Django

Автоматические тесты - очень полезная вещь для современного Web разработчика. Вы можете использовать наборы тестов – test suite – для решения ряда проблем:

  • Когда разрабатывается новый функционал, вы можете использовать тесты для проверки того, что код работает как ожидается.
  • Когда вы проводите рефакторинг старого кода, тесты обеспечивают гарантию, что изменения не внесут в приложение новые ошибки.

Тестирование Web приложений представляет собой сложную задачу, так как Web приложение состоит из нескольких слоёв логики – от HTTP обработки запросов до проверки и обработки форм и рендеринга страницы. С помощью тестового фреймворка, встроенного в Django, и нескольких утилит вы можете эмулировать запросы, вставлять тестовые данные и проверять ответ приложения, удостоверяясь, что ваш код работает как ожидается.

Предпочитаемым способом создания в Django является использование стандартного модуля Python unittest. Его использование описано в документации Создание и запуск тестов.

Вы можете использовать и другие фреймворки для тестирования, т.к. в Django есть API и утилиты для быстрой интеграции. Они описаны в разделе Using different testing frameworks документации Advanced testing topics.