Django unittest 单元测试
这里就不再介绍单元测试的作用了。
首先单元测试的创建方式有两种,一种是app下面的test文件,另一种是自定义方式创建
方法一、使用test.py文件测试
from django.test import TestCase # Create your tests here.
# -*- coding: utf-8 -*-
# __author__ = 'dandy'
from rest_framework.test import APIRequestFactory class TestOrderAPI(TestCase): def setUp(self):
self.factory = APIRequestFactory()
print('starting') def test_name1(self):
"""
测试创建订单 :return:
"""
print('testing name111 ...........')
name = 'dandy'
self.assertEqual(name, 'dandy')
print('test name success !!!') def test_age1(self):
"""
测试创建订单 :return:
"""
print('testing age111 ...........')
age = 18
self.assertEqual(age, 17)
print('test age success !!!')
调用

也可以这样调用
python3 manage.py test app01.tests
直接test会进行全局查找,而上面的命令是对于各个子测试的执行
方法二、自定义文件
如下格式创建文件目录

# -*- coding: utf-8 -*-
# __author__ = 'dandy' from django.test import TestCase
from rest_framework.test import APIRequestFactory class TestOrderAPI(TestCase): def setUp(self):
self.factory = APIRequestFactory() def test_name(self):
"""
测试创建订单 :return:
"""
print('testing name ...........')
name = 'dandy'
self.assertEqual(name, 'dandy')
print('test name success !!!') def test_age(self):
"""
测试创建订单 :return:
"""
print('testing age ...........')
age = 18
self.assertEqual(age, 17)
print('test age success !!!')
执行

此时如果执行test命令

from django.test import TestCase
from rest_framework.test import APIRequestFactory
from api.test.util.mock_data import data_create_order
from api import views
from backend.models import User
from backend.constant import Constant class TestOrderAPI(TestCase):
"""
订单接口测试用例
""" def setUp(self):
self.factory = APIRequestFactory() def test_create(self):
"""
测试创建订单 :return:
"""
request = self.factory.post('/order/', data_create_order, format='json')
response = views.OrderCreateView.as_view()(request)
self.assertEqual(response.data['code'], 20000) def test_order_detail(self):
"""
获取订单详情 :return:
"""
request = self.factory.post('/order/', data_create_order, format='json')
response = views.OrderCreateView.as_view()(request) order_no = response.data['data']['order_no']
url = '/order/%(number)s/' % {'number': order_no}
request = self.factory.get(url)
response = views.OrderDetailView.as_view()(request, number=order_no)
self.assertEqual(response.data['code'], 20000)
实战
更多基础知识
https://www.jianshu.com/p/34267dd79ad6
https://docs.djangoproject.com/en/2.1/topics/testing/
Django unittest 单元测试的更多相关文章
- django的单元测试框架unittest、覆盖率
django的单元测试 指定测试范围: 指定运行某些测试文件./manage.py test --pattern="tests_*.py" -v 2 运行所有测试文件./manag ...
- unittest 单元测试框架断言方法
unittest单元测试框架的TestCase类下,测试结果断言方法:Assertion methods 方法 检查 版本 assertEqual(a, b) a == b assertNotEqu ...
- Node.js的UnitTest单元测试
body{ font: 16px/1.5em 微软雅黑,arial,verdana,helvetica,sans-serif; } 在专业化的软件开发过程中,无论什么平台语言,现在都需要UnitTes ...
- 我的TDD实践---UnitTest单元测试
我的TDD实践---UnitTest单元测试 “我的TDD实践”系列之UnitTest单元测试 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则 ...
- unittest单元测试框架总结
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
- unittest单元测试框架详解
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
- Selenium+Python ---- 免登录、等待、unittest单元测试框架、PO模型
1.免登录在进行测试的过程中难免会遇到登录的情况,给测试工作添加了工作量,本文仅提供一些思路供参考解决方式:手动请求中添加cookies.火狐的profile文件记录信息实现.人工介入.万能验证码.去 ...
- unittest单元测试框架
unittest单元测试框架 概述: 单元测试框架主要用来完成以下三件事: 提供用例组织与执行:当测试用例只有几条时,可以不必考虑用例的组织,但是当用例达到成百上千条时,大量的用例堆砌在一起,就产生了 ...
- python unittest单元测试
unittest单元测试框架:包含测试用例编写.测试收集\测试用例加载.执行测试用例.生成测试用例报告,同时,更提供了添加断言,异常处理等. 第一:创建测试类,创建测试用例 第二:收集测试用例,加载测 ...
随机推荐
- Linux新手随手笔记1.3
shell脚本的编写(划重点) #!/bin/bash 脚本的声明信息 #sjsjdhsjdhh 脚本的注释 ls -l ...
- react dnd demo2
import React, { Component } from 'react'; import './App.css'; import Card from './Card'; import HTML ...
- ASP.NET Core 2.1与2.2 SignalR CORS 跨域问题
将 SignalR 集成到 ASP.NET Core api 程序的时候,按照官方 DEMO 配置完成,本地访问没有问题,但是发布之后一直报跨域问题,本地是这样设置的: Asp.net core 2. ...
- 玩玩LED点阵屏(arduino nano)
做些记录,特别是led显示左移效果的代码,二进制位的特效函数 unsigned ][]= { 0xff,0xd7,0x83,0xd6,0xc6,0xd4,0xc6,0x82,0xd6,0xba,0xf ...
- 菜鸟学IT之python网页爬取初体验
作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2881 1. 简单说明爬虫原理 爬虫简单来说就是通过程序模拟浏览器放松请求站 ...
- WebApi(五)-Swagger接口文档①简单集成
1,通过NuGet引用Swashbuckle 2,打开项目属性-->生成,勾选XML文档文件,保存 3,找到项目App_Start文件夹下WebApiConfig查找GetXmlComments ...
- 数据库常用的事务隔离级别和原理?&&mysql-Innodb事务隔离级别-repeatable read详解
转载地址:https://baijiahao.baidu.com/s?id=1611918898724887602&wfr=spider&for=pc https://blog.csd ...
- Python爬虫beautifulsoup4常用的解析方法总结
摘要 如何用beautifulsoup4解析各种情况的网页 beautifulsoup4的使用 关于beautifulsoup4,官网已经讲的很详细了,我这里就把一些常用的解析方法做个总结,方便查阅. ...
- 新建promise
callback(){ const promise =new Promise((resolve,rejest)=>{ console.log('2') 代码 resolve('true') }) ...
- 基于.NET平台的Ocelot网关框架教程汇总
Ocelot 框架是基于.NET 开发的 API 网关,API网关是系统内部服务暴露在外部的一个访问入口,类似于代理服务器,就像一个公司的门卫承担着寻址.限制进入.安全检查.位置引导等工作,我们可以形 ...