我正在尝试将我的django应用程序与selenium集成以通过manage.py test命令运行selenium测试(我需要一些自动运行testserver的东西).使用django-selenium进行此集成.当我从django-selenium运行示例项目时,它很好.但是当我运行使用静态文件的真实应用程序时,我得到了这个:
File "env\lib\site-packages\django\core\servers\basehttp.py",
line 283, in run
self.result = application(self.environ, self.start_response)
File "env\lib\site-packages\django_selenium\selenium_server.p
y", line 45, in test_app
return handler(environ, start_response)
File "env\lib\site-packages\django\contrib\staticfiles\handle
rs.py", line 68, in __call__
return self.application(environ, start_response)
File "env\lib\site-packages\django\core\handlers\wsgi.py", li
ne 272, in __call__
response = self.get_response(request)
File "env\lib\site-packages\django\core\handlers\base.py", li
ne 153, in get_response
response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
File env\lib\site-packages\django\core\handlers\base.py", li
ne 218, in handle_uncaught_exception
return callback(request, **param_dict)
File "env\lib\site-packages\django\utils\decorators.py", line
93, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "env\lib\site-packages\django\views\defaults.py", line 3
0, in server_error
t = loader.get_template(template_name) # You need to create a 500.html templ
ate.
File "env\lib\site-packages\django\template\loader.py", line
157, in get_template
template, origin = find_template(template_name)
File "env\lib\site-packages\django\template\loader.py", line
138, in find_template
raise TemplateDoesNotExist(name)
TemplateDoesNotExist: 500.html
Run Code Online (Sandbox Code Playgroud)
看起来这是由静态文件处理程序引起的....
我该如何解决这个错误?DEBUG是True,我在urls.py中有静态url处理程序
测试服务器始终运行DEBUG = False; 这是https://docs.djangoproject.com/en/dev/topics/testing/:
无论配置文件中DEBUG设置的值如何,所有Django测试都以DEBUG = False运行.这是为了确保您观察到的代码输出与生产设置中的内容相匹配.
因此,您不能依赖DEBUG处理静态文件,您需要一种类似于生产的显式方式来处理它们以便测试找到它们.您可以在自己的特殊部分urls.py打开serve()运行时的开发test:
if 'test' in sys.argv:
static_url = re.escape(settings.STATIC_URL.lstrip('/'))
urlpatterns += patterns('',
url(r'^%s(?P<path>.*)$' % static_url, 'django.views.static.serve', {
'document_root': settings.STATIC_ROOT,
}),
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1243 次 |
| 最近记录: |