Django unittest's: Как настроить временное представление с временным URL-адресом conf для unittest's - PullRequest
7 голосов
/ 08 апреля 2011

Я создал пару классов Middleware и хочу проверить их на предмет реальных представлений. Поскольку мое приложение не включает в себя какие-либо представления или URL-адреса, мне было интересно, есть ли способ временного создания представлений и конфигурации URL-адресов только для тестирования (аналогично тестовой базе данных) в тестовой среде Django. В конце я хотел бы использовать тестовый клиент для проверки этих временных представлений на наличие ошибок, поступающих из Middleware. Я не нашел решения для этого в документации.

Я знаю, что могу создать тестовое представление в своем приложении (в views.py) и указать на него из проектов ROOT_URLCONF, но я не хочу заставлять пользователя делать это при использовании моего приложения и желании провести тестирование мои промежуточные классы.

Есть идеи?

Спасибо.

1 Ответ

7 голосов
/ 08 апреля 2011

Да, это возможно, если вы используете django.test.TestCase.Вот документы по настройке конфигурации URL для конкретного тестового примера: https://docs.djangoproject.com/en/1.8/topics/testing/tools/#urlconf-configuration

Когда я делал это в прошлом, я обычно разбивал свой набор тестов, как вспомогательное приложение (без моделей):

tests
    __init__.py
    urls.py
    views.py
    base.py

Тогда в тестовом примере вы должны установить:

class MiddlewareTestCase(TestCase):
    urls = 'appname.tests.urls'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...