Django unittest 设置跳过某些case的方法


Posted in Python onDecember 26, 2018

按理说unittest 中是不应该测试那种外部依赖很强的用例,但是呢,有时候有些接口总是调试好之后怕忘了,就写了一些简单的测试case,想要通过在settings中增加一些配置来开启和关闭这些case,这样的话就可以在正常跑单元测试的时候隔离开这些不怎么正规的测试用例。

环境

* Django1.8

* Python2.7.x

unittest 中提供了这么一个装饰器,用起来也很简单。这里是一个百度地图的地理编码API,只想在某些时候跑这个case。

在settings中 test 配置部分增加一个配置项

# 必须连接外网的测试, 偶尔使用, false是不跳过,也就是进行测试
SKIP_MAP_API = False

tests中类似这种设置

# coding:utf-8
import unittest

from django.conf import settings
from django.test import TestCase

from map.util import BaiduAPI


class BaiduMapTestCase(TestCase):

 def setUp(self):
  self.locs = [{'lon': 39.914888, 'lat': 116.403874}, {'lon': 38.914888, 'lat': 117.403874}]

 # 就这个装饰器
 @unittest.skipIf(settings.SKIP_MAP_API, u'需要外网连接')
 def test_fetch_geocode(self):
  print '------ map testing -------'
  b = BaiduAPI()
  res = b.getcodeer(self.locs)
  self.assertEqual(len(res), 2)

很简单的东西,知道就好,这样的话可以进行一些用例分组配置等。

以上这篇Django unittest 设置跳过某些case的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接mongodb操作数据示例(mongodb数据库配置类)
Dec 31 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
python机器学习理论与实战(五)支持向量机
Jan 19 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
Apr 15 Python
python实现大文件分割与合并
Jul 22 Python
flask框架单元测试原理与用法实例分析
Jul 23 Python
下载与当前Chrome对应的chromedriver.exe(用于python+selenium)
Jan 14 Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 Python
PyCharm配置anaconda环境的步骤详解
Jul 31 Python
通过代码实例了解Python异常本质
Sep 16 Python
Django使用django-simple-captcha做验证码的实现示例
Jan 07 Python
Python爬虫网络请求之代理服务器和动态Cookies
Apr 12 Python
python 2.7 检测一个网页是否能正常访问的方法
Dec 26 #Python
在python中使用requests 模拟浏览器发送请求数据的方法
Dec 26 #Python
Django+JS 实现点击头像即可更改头像的方法示例
Dec 26 #Python
Python使用requests提交HTTP表单的方法
Dec 26 #Python
利用Pyhton中的requests包进行网页访问测试的方法
Dec 26 #Python
python http基本验证方法
Dec 26 #Python
python url 参数修改方法
Dec 26 #Python
You might like
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
PHP基础学习小结
2011/04/17 PHP
解析strtr函数的效率问题
2013/06/26 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
Javascript和Ajax中文乱码吐血版解决方案
2009/12/21 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
2011/01/11 Javascript
jQuery EasyUI API 中文文档 - Panel面板
2011/09/30 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
JavaScript的原型继承详解
2015/02/15 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
2015/08/26 Javascript
JS经典正则表达式笔试题汇总
2016/12/15 Javascript
Node.js学习入门
2017/01/03 Javascript
详解Vue生命周期的示例
2017/03/10 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
浅谈VUE监听窗口变化事件的问题
2018/02/24 Javascript
JavaScript递归函数解“汉诺塔”算法代码解析
2018/07/05 Javascript
JavaScript之数组扁平化详解
2019/06/03 Javascript
解决在Vue中使用axios用form表单出现的问题
2019/10/30 Javascript
Python 的 Socket 编程
2015/03/24 Python
Python cx_freeze打包工具处理问题思路及解决办法
2016/02/13 Python
Python selenium 三种等待方式详解(必会)
2016/09/15 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
2018/10/31 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
关于pymysql模块的使用以及代码详解
2019/09/01 Python
python 有效的括号的实现代码示例
2019/11/11 Python
python 实现人和电脑猜拳的示例代码
2020/03/02 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
Python通过zookeeper实现分布式服务代码解析
2020/07/22 Python
Python和Bash结合在一起的方法
2020/11/13 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
数控专业毕业生求职信范文
2013/09/21 职场文书
小班教师个人总结
2015/02/05 职场文书
写给女朋友的检讨书
2015/05/06 职场文书
酒店厨房管理制度
2015/08/06 职场文书