【Django】入门实践指南之测试&静态文件配置|第4篇

课程:Django入门项目 - 论坛系统
打卡时间:2018.4.26

目录

【Django】入门实践指南之环境搭建|第0篇
【Django】入门实践指南之系统设计|第1篇
【Django】入门实践指南之模型设计|第2篇
【Django】入门实践指南之模板引擎|第3篇
【Django】入门实践指南之测试&静态文件配置|第4篇
【Django】入门实践指南之Admin&URL分发|第5篇
【Django】入门实践指南之模板复用&表单处理|第6篇

前言

上一篇学习了如何使用模板引擎搭建界面。本篇将学习如何对界面进行测试。学习使用Testing tools

关于Testing tools具体内容请查看官方文档。Testing tools

一、第一个测试

上一篇我们创建Home页面,我们接下来测试用例,来测试该URL返回的状态码。在boards/tests.py文件填入一下内容。

from django.test import TestCase
from django.urls import reverse, resolve 
# reverse在urls模块中
from .views import home
class HomeTests(TestCase):
    def test_home_view_status_code(self):
        url = reverse('home')
        response = self.client.get(url)
        self.assertEquals(response.status_code, 200)

reverse()方法使用命名URL获取url。它对应的是boards/urls.py文件中path('', views.home, name='home')的值。另外该方法还可以接受参数args或者kwargs,用来接收URL中的参数。PS: argskwargs不可同时使用。

执行python manage.py test命令。

会在控制台输出一些信息。

【Django】入门实践指南之测试&静态文件配置|第4篇_第1张图片

上面这测试时测试请求地址返回状态码是否是200。接下来我们来看第二个测试。

 def test_home_url_resolves_home_view(self):
        view = resolve('/boards/')
        self.assertEquals(view.func, home)

该方法使用resolve函数。Django使用它来将浏览器发起请求的URLurls.py模块中列出的URL进行匹配。该测试用来确定/boards/返回home视图。

运行test命令。查看测试结果!

另外,还可以通过设置verbosity来决定控制台打印的通知和调试信息量;0:无输出;1:正常输出;2:详细输出。

例如:

python manage.py test --verbosity=2

以上就是第一个测试,以后的学习中我们还会继续学习如何测试。这只是简单的入门。

二、静态文件配置

静态文件是指css, js, 字体,图片等资源。

Django不负责处理这些文件,提供了一些功能来帮助我们管理静态文件。这些功能可在 INSTALLED_APPS 的 django.contrib.staticfiles 应用程序中找到(译者:Django为了使得开发方便,也可以处理静态文件,而在生产环境下,静态文件一般直接由 Nginx 等反向代理服务器处理,而应用服务器专心负责处理它擅长的业务逻辑)。

下面以添加bootstrap到项目中为例,学习如何管理静态文件。

首先在manage.py同级目录下创建static文件夹,并在其中创建一个css文件夹。将下载好的bootstrap.min.css放入该文件夹中。

接下来我们需要告诉Django去哪里查找静态文件。在setting.py文件中添加一下内容。

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.0/howto/static-files/

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

此时已经配置好静态文件的路径了。接下来可以使用bootstrap文件。

templates/home.html

{% load static %}


    
    Boards
    


    
{% for board in boards %} {% endfor %}
Board Posts Topics Last Post
{{ board.name }} {{ board.desc }} 0 0

文件开头使用了Static Files App模板标签{% load static %}

模板标签{% static %}用于构成资源文件完整URL。此时{% static 'css/bootstrap.min.css' %}将返回static/css/boostrap.min.css

至此,静态文件应配置好了。

我们可以运行python manage.py runserver启动服务器,打开浏览器查看页面。

三、小结

本篇学习Testing tools基本用法,另外还学习如何添加静态文件,以及如何配置静态文件等。

你可能感兴趣的:(【Django】入门实践指南之测试&静态文件配置|第4篇)