运行鼻台时,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 enviromental变量,我的测试成功运行,但随后我收到以下例外:

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

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

nosetests --with-django 成功运行测试

有帮助吗?

解决方案

事实证明问题是我用过 tddsprydjango-nose 而且他们俩都有自己的类似设置/拆卸插件,因此我对Django-nose testrunner进行了亚分,并从默认值中删除了该插件。

要解决此问题,请安装最新 tddspry 来自官方 GIT存储库, ,最新稳定 django-nose 来自PYPI 并在Django设置中添加TDDSPRY TestSuiterunner,如下所示:

TEST_RUNNER = 'tddspry.django.runner.TestSuiteRunner'
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top