django-nose testrunner не использует опцию --with-django - PullRequest
2 голосов
/ 20 августа 2010

При проведении тестов носа, django-nose Runner не предоставляет опцию --with-django для nosetests, поэтому при попытке получить доступ к URL-адресам тесты "Нос + Твил" не выполняются:

./manage.py test
...
raise BrowserStateError("cannot go to '%s'" % (url,))
BrowserStateError: cannot go to 'http://127.0.0.1:8088/admin/'
----------------------------------------------------------------------
Ran 2 tests in 0.166s

FAILED (errors=1)

Когда я предоставляю --with-django вручную или установите NOSE_WITH_DJANGO=1 переменную среды, мои тесты успешно выполняются, но затем я получаю следующее исключение:

$ ./manage.py test --with-django
...
Ran 2 tests in 0.199s

OK
...
AttributeError: type object 'Template' has no attribute 'original_render'

nosetests --with-django успешно выполняет тесты

1 Ответ

0 голосов
/ 06 ноября 2010

Оказывается, проблема была в том, что я использовал tddspry с django-nose, и у них обоих был свой подобный плагин setup / teardown, поэтому я поместил django-нос в TestRunner и удалил этот плагин из значений по умолчанию.

Чтобы решить эту проблему, установите последнюю версию tddspry из официального репозитория git , последнюю стабильную версию django-nose из PyPI и добавьте tddspry TestSuiteRunner в настройки Django следующим образом:

TEST_RUNNER = 'tddspry.django.runner.TestSuiteRunner'
...