溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django unittest 設置跳過某些case的方法

發布時間:2020-10-25 08:37:34 來源:腳本之家 閱讀:236 作者:orangleliu 欄目:開發技術

按理說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的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女