Django unittest 设置跳过某些case的方法
按理说unittest中是不应该测试那种外部依赖很强的用例,但是呢,有时候有些接口总是调试好之后怕忘了,就写了一些简单的测试case,想要通过在settings中增加一些配置来开启和关闭这些case,这样的话就可以在正常跑单元测试的时候隔离开这些不怎么正规的测试用例。
环境
*Django1.8
*Python2.7.x
unittest中提供了这么一个装饰器,用起来也很简单。这里是一个百度地图的地理编码API,只想在某些时候跑这个case。
在settings中test配置部分增加一个配置项
#必须连接外网的测试,偶尔使用,false是不跳过,也就是进行测试 SKIP_MAP_API=False
tests中类似这种设置
#coding:utf-8 importunittest fromdjango.confimportsettings fromdjango.testimportTestCase frommap.utilimportBaiduAPI classBaiduMapTestCase(TestCase): defsetUp(self): self.locs=[{'lon':39.914888,'lat':116.403874},{'lon':38.914888,'lat':117.403874}] #就这个装饰器 @unittest.skipIf(settings.SKIP_MAP_API,u'需要外网连接') deftest_fetch_geocode(self): print'------maptesting-------' b=BaiduAPI() res=b.getcodeer(self.locs) self.assertEqual(len(res),2)
很简单的东西,知道就好,这样的话可以进行一些用例分组配置等。
以上这篇Djangounittest设置跳过某些case的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。