Python的单元测试unittest
2017-04-21 本文已影响0人
但宁
最近做了Python版本数家sdk接口测试,简单记录一下Python的unittest的用法,并逐渐补充丰富。
单元测试例子
引入Python自带的unittest模块,继承unittest.TestCase类,结尾需要加上
if __name__ == "__main__":
unittest.main()
这样就能把这个测试脚本当做正常的Python文件在命令行执行了。也可以使用
-m unittest
直接运行测试
其中以test
开头的方法会被当做单元测试而执行,不以test
开头的方法测试时不会被执行
所写的测试脚本如下:
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()