Django小技巧12: 禁用单元测试的Migrations

翻译整理自: simpleisbetterthancomplex.com

Migrations 无疑是 Django 的一大特色功能,当它在单元测试的时候, 却会加长整个单元测试的时间。特别是你的migrations history特别的大.本篇是加快单元测试的小技巧:

为单元测试单独创建一个 settings

tests_settings.py

Python

from settings import *

# Custom settings goes here

然后在执行测试的时候,这样做:

Bash

python manage.py test --settings=myproject.tests_settings --verbosity=1

Django >= 1.9

使用MIGRATION_MODULES设置项, 用于定义migration模块的自定义名称, 如果为None则是忽略此模块.

Python

from settings import *

MIGRATION_MODULES = {
    'auth': None,
    'contenttypes': None,
    'default': None,
    'sessions': None,

    'core': None,
    'profiles': None,
    'snippets': None,
    'scaffold_templates': None,
}

Django < 1.9

如果是1.9之前的版本,可以用下面的方法。实际上, 我现在依然在使用它, 因为这种方法不需要指定各个模块.

Python

from settings import *

class DisableMigrations(object):
    def __contains__(self, item):
        return True

    def __getitem__(self, item):
        return 'notmigrations'

MIGRATION_MODULES = DisableMigrations()

更旧的版本 (使用: South)

Raw

SOUTH_TESTS_MIGRATE = False

这个可以写在生产的settings.py中.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏安富莱嵌入式技术分享

【RL-TCPnet网络教程】第32章 RL-TCPnet之Telnet服务器

本章节为大家讲解RL-TCPnet的Telnet应用,学习本章节前,务必要优先学习第31章的Telnet基础知识。有了这些基础知识之后,再搞本章节会有事半功倍的...

10430
来自专栏技术沉淀

PHP基础

18360
来自专栏小灰灰

Java 动手写爬虫: 四、日志埋点输出 & 动态配置支持

第四篇, 日志埋点输出 & 动态配置支持 前面基本上实现了一个非常简陋的爬虫框架模型,很多关键链路都没有日志,在分析问题时,就比较麻烦了,因此就有了这一篇博文...

32070
来自专栏小鄧子的技术博客专栏

简单线程池的实现

要使用上述线程池,还需要一个永不退出的工作现场与之配合。是一个While循环,手动关闭之前,永不结束,一直等待新的任务进来。

10110
来自专栏码农阿宇

Asp.net Core 2.1新功能Generic Host(通用主机)深度学习

这是在Asp.Net Core 2.1加入了一种新的Host,现在2.1版本的Asp.Net Core中,有了两种可用的Host。

17420
来自专栏码农阿宇

Asp.net Core 2.1新功能Generic Host(通用主机)深度学习

这是在Asp.Net Core 2.1加入了一种新的Host,现在2.1版本的Asp.Net Core中,有了两种可用的Host。

13210
来自专栏有趣的django

Django rest framework源码分析(1)----认证

一、基础 1.1.安装 两种方式: github pip直接安装 pip install django-rest-framework 1.2.需要先了解的一...

673110
来自专栏章鱼的慢慢技术路

MFC绘图基础——上机操作步骤

55230
来自专栏我和PYTHON有个约会

scrapy0700:深度爬虫scrapy深度爬虫

爬虫程序,主要是用与数据采集处理的一种网络程序,在操作过程中针对指定的url地址进行数据请求并根据需要采集数据,但是在实际项目开发过程中,经常会遇到目标url地...

24220
来自专栏别先生

基于jsp+servlet图书管理系统之后台用户信息查询操作

上一篇的博客写的是插入操作,且附有源码和数据库,这篇博客写的是查询操作,附有从头至尾写的代码(详细的注释)和数据库!   此次查询操作的源码和数据库:http:...

462100

扫码关注云+社区

领取腾讯云代金券