Django unittest 设置跳过某些case

原创 2017年09月05日 18:33:47

按理说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)

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

版权声明:本文为orangleliu (http://blog.csdn.net/orangleliu/)原创文章,自由传播,文章转载请声明, 多谢。

相关文章推荐

【Django】源码分析之session生命周期

Web应用中session是至关重要的一个概念,有了它http就有了状态。 我们才能方面的开发出各种基于用户的应用。说到session 不得不说cookies,不过cookies在服务端基本没有太多需...

Openresty 动态2017.8

8.27agentzh:Mashape 公司最近赞助了我们 OpenResty Inc 公司把 ngx_stream_lua 模块重写了一遍。现在我们迁移到了 nginx 1.13.3 核心的新的 s...

case语句跳过变量初始化的问题

今天写程序遇到了一个问题,错误如下: 代码如下: switch(m_Radio_Contour)   {   case 0:    //Sobel算子边缘检测    Ptr pImag...

hdc的初始化操作由case标签跳过

今天在练习sdk的时候,直接新建了一个win32的窗口应用。窗口类什么的都是自动生成的,没做改动。 然后在窗口过程中新加了一条消息WM_CHAR,在里面写了HDC hdc_local = GetDC(...

selenium的TestNG框架注解,测试集合,用例分组,依赖测试,特定顺序执行,跳过某个case执行,自定义日志,断言_06

TestNG框架注解,测试集合,用例分组,依赖测试,特定顺序执行,跳过某个case执行,自定义日志,断言 1.注解:新建testNG框架的Annotation类,代码如下 public ...

设置内部事件使exp跳过坏块

[oracle@lucky archivelog]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Thu O...

开机向导wifi设置无法跳过

目前第一次开机(或者恢复出厂设置后开机)有以下两个问题: 开机向导wifi设置界面skip按钮置灰,等待一段时间后才可以点击跳过开机动画完成后黑屏一段时间才出现开机向导第一个界面 以上两个问题并不...

Android集成环信easeui,设置圆形头像,修改气泡和扩展栏,跳过打包冲突

初次集成环信的话还是有很多坑的, 我也是个新手,技术客服各种问,各种找人,才堪堪摸到门槛,记录下一点东西,希望给那些初次集成的朋友一点tips. 1,集成环信的时候,如果你不需要很多如视频聊天,等...

用 Case方法为每个 ListView 的Item设置监听器

ListView是我们安卓开发重要组件,我们实现监听方法多种,我们用case方法实现监听。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Django unittest 设置跳过某些case
举报原因:
原因补充:

(最多只允许输入30个字)