Django -- 自动化测试

概述

测试是一种例行的、不可缺失的工作,用于检查你的程序是否符合预期。

测试可以划分为不同的级别。一些测试可能专注于小细节(比如某一个模型的方法是否会返回预期的值?), 一些测试则专注于检查软件的整体运行是否正常(用户在对网站进行了一系列的输入后,是否返回了期望的结果?)。

测试可以分为手动测试和自动测试。手动测试很常见,有时候print一个变量内容,都可以看做是测试的一部分。手动测试往往很零碎、不成体系、不够完整、耗时费力、效率低下,测试结果也不一定准确。

自动化测试则是系统地较为完整地对程序进行测试,效率高,准确性高,并且大部分共同的测试工作会由系统来帮你完成。一旦你创建了一组自动化测试程序,当你修改了你的应用,你就可以用这组测试程序来检查你的代码是否仍然同预期的那样运行,而无需执行耗时的手动测试。

编写测试程序

Django是一个全面、完善、严谨的Web框架,当然不会缺少测试功能。

终端运行下列命令:

python manage.py test

运行结果:

python 复制代码
Creating test database for alias 'default'...
System check identified no issues (0 silenced).
----------------------------------------------------------------------
Ran 1 test in 0.002s
OK
Destroying test database for alias 'default'...

这其中都发生了些什么?

  • python manage.py test <appName>命令会查找应用中所有的测试程序
  • 发现一个django.test.TestCase的子类
  • 为测试创建一个专用的数据库
  • 查找名字以test开头的测试方法, 然后运行
相关推荐
ding_zhikai4 小时前
【Web应用开发笔记】Django笔记3:模版的用法-实现一个简单的网页
笔记·后端·python·django
FL16238631294 小时前
基于yolov11+django+deepseek的血液细胞红白细胞血小板检测系统带登录界面python源码+onnx模型+精美web界面
python·yolo·django
FL16238631291 天前
基于yolov11+django+deepseek的脑肿瘤检测系统带登录界面python源码+onnx模型+精美web界面
python·yolo·django
ding_zhikai1 天前
【Web应用开发笔记】Django笔记2:一个 Hello World 网页
笔记·后端·python·django
百锦再2 天前
Jenkins 全面精通指南:从入门到脚本大师
运维·后端·python·servlet·django·flask·jenkins
FYKJ_20102 天前
springboot大学校园论坛管理系统--附源码42669
java·javascript·spring boot·python·spark·django·php
没有bug.的程序员2 天前
自动化测试之魂:Selenium 与 TestNG 深度集成内核、Page Object 模型实战与 Web UI 交付质量指南
前端·自动化测试·selenium·ui·testng·page·object
yq1982043011563 天前
使用Django构建视频解析网站 从Naver视频下载器看Web开发全流程
前端·django·音视频
wx_bishe2884 天前
python社区流浪动物猫狗救助救援网站_4a4i2--论文_pycharm django vue flask
python·pycharm·django·毕业设计
秋氘渔5 天前
Django查询集优化:惰性加载、N+1查询问题及解决方案
mysql·django·select_related