最近做了Python版本數(shù)家sdk接口測試,簡單記錄一下Python的unittest的用法,并逐漸補充豐富。
單元測試例子
引入Python自帶的unittest模塊,繼承unittest.TestCase類,結(jié)尾需要加上
if __name__ == "__main__":
unittest.main()
這樣就能把這個測試腳本當做正常的Python文件在命令行執(zhí)行了。也可以使用
-m unittest
直接運行測試
其中以test
開頭的方法會被當做單元測試而執(zhí)行,不以test
開頭的方法測試時不會被執(zhí)行
所寫的測試腳本如下:
import unittest
class TestHealth(unittest.TestCase):
def testHealth_result(self):
trsdatahouse = TRSDataHouse()
p = dict()
p['websitename']='trs'
p['urlname']='http://www.trs.com.cn/'
print(trsdatahouse.send('/news/health_add',p))
params1 = dict()
sid = json.loads(trsdatahouse.send('/news/health_list',params1))['data'][0]['sid']
params = dict()
params['sid']=int(sid)
print(trsdatahouse.send('/news/health_check',params))
print(trsdatahouse.send('/news/health_status',params))
resultids = json.loads(trsdatahouse.send('/news/health_status',params))['data'][0]['resultids'] #resultid檢查多次就多個,只保留3個
resultid = resultids [0]
params2 = dict()
params2['sid'] = int(sid)
params2['resultid']= resultid
data = trsdatahouse.send('/news/health_result', params2)
print(data)
if __name__ == "__main__":
unittest.main()