django-Nase testrunner nicht verwendet --with-django Option
-
30-09-2019 - |
Frage
Wenn nosetests ausgeführt wird, wird django-nose Läufer nicht --with-django
Option nosetests
liefern, so dass meine Nase + Twill Tests fehlschlagen, wenn für den Zugriff URLs versucht:
./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)
Wenn ich --with-django
manuell oder Satz NOSE_WITH_DJANGO=1
enviromental Variable liefern, laufen meine Tests erfolgreich, aber dann bekomme ich folgende Ausnahme:
$ ./manage.py test --with-django
...
Ran 2 tests in 0.199s
OK
...
AttributeError: type object 'Template' has no attribute 'original_render'
nosetests --with-django
führt Tests erfolgreich
Lösung
Stellt sich heraus, das Problem war, dass ich verwendet tddspry
mit django-nose
und sie beide hat ihre eigene ähnliche Setup / Teardown-Plugin, so dass ich subclassed django-Nase und entfernt Testrunner, dass aus dem Ausfall Plugin.
Um dieses Problem zu lösen, installieren Sie neuesten tddspry
aus offiziellem git-Repository , neueste stabile django-nose
von PyPI und tddspry TestSuiteRunner zu Django-Einstellungen hinzufügen, wie folgt:
TEST_RUNNER = 'tddspry.django.runner.TestSuiteRunner'