【Django单元测试方法】
一.前言/准备
测Django的东西仅限于在MTV模型。哪些可以测?哪些不可以。
1.html里的东西不能测。
①Html里的HTML代码大部分都是写死的
②嵌套在html中的Django模板语言也不能测,即使有部分逻辑。
但写测试用例时至少要调用一个类或者方法。模板语言没有出参也没有入参,不能测
2.models模型可测。属于数据库层
3.views,视图层可以测。有入参、有方法。
综上:根据Django语言特点,可测models和views

二.Django单元测试具体步骤----【测试模型models中的内容】
# coding=utf-8
from django.test import TestCase #导入Django测试包
from sign.models import Guest, Event #导入models中的发布会、嘉宾类 #首先创建测试类
class ModelTest(TestCase): #初始化:分别创建一条发布会(Event)和一条嘉宾(Guest)的数据。
def setUp(self):
Event.objects.create(id=1, name="oneplus 3 event", status=True, limit=2000,
address='shenzhen', start_time='2016-08-31 02:18:22')
Guest.objects.create(id=1, event_id=1, realname='alen',
phone='13711001101', email='alen@mail.com', sign=False) #下面开始写测试用例了
#1.通过get的方法,查询插入的发布会数据,并根据地址判断
def test_event_models(self):
result = Event.objects.get(name="oneplus 3 event")
self.assertEqual(result.address, "shenzhen")
self.assertTrue(result.status) #2.通过get的方法,查询插入的嘉宾数据,并根据名字判断
def test_guest_models(self):
result = Guest.objects.get(phone='13711001101')
self.assertEqual(result.realname, "alen")
self.assertFalse(result.sign) #写完测试用例后,执行测试用例。这里与unittest的运行方法也不一样。
#Django提供了“test”命令来运行测试。(用cmd执行 见下截图)
注意:刚刚在setup()部分操作时,其实并不会真正向数据库表中插入数据。所以,不用担心测试完后产生垃圾数据的问题。

如果:插入了表中没有定义的字段时,也是会报错提醒的!
三.Django单元测试具体步骤----【测试视图views中的内容】
【Django单元测试方法】的更多相关文章
- Django单元测试总结
title: Django单元测试总结 date: 2019/6/18 17:50:00 body: [article] description: " 在本文中,笔者大致对Django单元 ...
- spring 单元测试方法及其错误整理
spring 单元测试及其错误整理 目录: NO1 spring单元测试方法 - NO1.1 pom.xml文件中确认有下面依赖 - NO1.2 在需要测试的类上,或者新建的测试类上添加注解 - NO ...
- java 面向对象(十七):单元测试方法
* Java中的JUnit单元测试 * * 步骤: * 1.中当前工程 - 右键择:build path - add libraries - JUnit 4 - 下一步 * 2.创建Java类,进行单 ...
- 熟悉Junit单元测试方法
定义: JUnit是一个Java语言的单元测试框架.它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个. JUnit有它自己 ...
- 软件测试第二次作业:初识JUNIT单元测试方法
软件测试有很多分类,从测试的方法上可分为:黑盒测试.白盒测试.静态测试.动态测试 从软件开发的过程分为:单元测试.集成测试.确认测试.验收.回归等. 在众多的分类中,与开发人员关系最紧密的莫过于单 ...
- 软件测试:第二次作业(JUnit单元测试方法)
一.JUnit是什么? JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework).JUnit测试是程序员测试, ...
- 单元测试方法属性(Unit Test Method Attribute)
Additional test attributes(可以在测试方法上使用的属性)As you have seen, the unit-testing subsystem within Visual ...
- Spring框架下的单元测试方法
介绍在Spring的框架下,做单元测试的两种办法. 一.使用spring中对Junit框架的整合功能 除了junit4和spring的jar包,还需要spring-test.jar.引入如下依赖: & ...
- spring boot -junit单元测试方法示例
package com.example.zs; import com.example.zs.mapper.UserMapper; import com.example.zs.pojo.User; im ...
随机推荐
- python开发笔记之zip()函数用法详解
今天分享一篇关于python下的zip()函数用法. zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素按顺序组合成一个tuple,每个tuple中包含的是原 ...
- Centos 6.5出现yum安装慢的情况
最近在用Centos 6.5 的时候出现了这种情况, Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirro ...
- django-用户认证模型
django本身会在mysql里存储一个user数据库 为了和django本身的user表区分 要在第一次迁移数据库前配置认证系统使用的用户模型 settings.py # django认证系统使用的 ...
- 2019牛客多校第二场BEddy Walker 2——BM递推
题意 从数字 $0$ 除法,每次向前走 $i$ 步,$i$ 是 $1 \sim K$ 中等概率随机的一个数,也就是说概率都是 $\frac{1}{K}$.求落在过数字 $N$ 额概率,$N=-1$ 表 ...
- 05-Flutter移动电商实战-dio基础_引入和简单的Get请求
这篇开始我们学习Dart第三方Http请求库dio,这是国人开源的一个项目,也是国内用的最广泛的Dart Http请求库. 1.dio介绍和引入 dio是一个强大的Dart Http请求库,支持Res ...
- arduino adc数模放大器
http://ardui.co/archives/833 http://henrysbench.capnfatz.com/henrys-bench/arduino-voltage-measuremen ...
- .NET Core入门程序及命令行练习
用命令行一步一步新建项目.添加Package.Restore.Build.Run 执行的实现方式,更让容易让我们了解.NET Core的运行机制. 准备工作 安装.NET Core 运行环境,下载地址 ...
- Lightning Web Components 开发指南(二)
Lightning Web Components 是自定义元素使用html 以及现代javascript进行构建. Lightning Web Components UI 框架使用web compon ...
- 洛谷 P2085 最小函数值
目录 题目 思路 \(Code\) 题目 戳 思路 首先这些函数全部单带递增,因为\(a\),\(b\),\(c\)都是正整数. 我们将全部的函数的\(x\)为\(1\)时的函数值放入优先度列(小根堆 ...
- P3746 【[六省联考2017]组合数问题】
题目是要我们求出如下柿子: \[\sum_{i=0}^{n}C_{nk}^{ik+r}\] 考虑k和r非常小,我们能不能从这里切入呢? 如果你注意到,所有组合数上方的数\(\%k==r\),那么是不是 ...
