#! /usr/bin/python#coding:utf-8__author__='yanghaitao'fromXlsEngineimportXlsEngine_wtimportDataEngineimportConfigParser,time,LoggingimportVIPSoapimportsys
reload(sys)
sys.setdefaultencoding("utf-8")
DATE=time.strftime(r'%Y-%m-%d-%H%M%S', time.localtime(time.time()))
cf=ConfigParser.ConfigParser()
cf.read('./soapTest.ini')
VIP_release_IP=cf.get("VIP_WSDL","release_IP")#读取VIP测试接口IP#Excel的sheet中只保存同一接口的用例参数,不同接口保存在不同sheet中,通过修改sheet索引,获取不同接口的参数列表Service1_dataList=DataEngine.data2List(r'.\DataSrc\dataCase.xls',1)
Service2_dataList=DataEngine.data2List(r'.\DataSrc\dataCase.xls',2)
Service3_datalist=DataEngine.data2List(r'.\DataSrc\dataCase.xls',3)
Service4_datalist=DataEngine.data2List(r'.\DataSrc\dataCase.xls',4)defrunTest(ip,list,serviceClass):foriinrange(len(list)):try:
runtest=serviceClass(ip+str(list[i][0]))
dict=eval(str(list[i][2]))
test_rep=getattr(runtest,str(list[i][1]))(dict)#eval函数将str类型转换为dict类型,以传参给接口方法调用DataEngine.resultCheck(test_rep,xlw,list,i)exceptException,e:print(str(list[i][1])+"\t"+str(e))
Logging.writeException(e)if__name__=='__main__':
xlw= XlsEngine_wt(r'.\DataSrc\\'+DATE+'.xls')
xlw.add_sheet('result')
runTest(VIP_release_IP,Service1_dataList,VIPSoap.Service1)
runTest(VIP_release_IP,Service2_dataList,VIPSoap.Service2)
runTest(VIP_release_IP,Service3_datalist,VIPSoap.Service3)
runTest(VIP_release_IP,Service4_datalist,VIPSoap.Service4)
xlw.save_xls()