Python接口测试简单框架
来源:互联网 发布:网络安全设备评估报告 编辑:程序博客网 时间:2024/05/22 21:15
用例设计:
执行用例代码:# -*- coding: UTF-8 -*-import xlrd,logging,urllib,urllib2,json,sysfrom pylsy import pylsytable########################################################################################################定义系统输出编码reload(sys)sys.setdefaultencoding('utf-8')##########################################################################################################定义日志输出logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a, %d %b %Y %H:%M:%S', filename='myapp.log', filemode='w')##################################################################################################定义一个StreamHandler,将INFO级别或更高的日志信息打印到标准错误,并将其添加到当前的日志处理对象#console = logging.StreamHandler()console.setLevel(logging.INFO)formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s')console.setFormatter(formatter)logging.getLogger('').addHandler(console)#####################################################################################################################################################################################################处理excel表格data = xlrd.open_workbook('C:\Users\xxxxx\Desktop\API.xls')#打开excel表格logging.info("打开%s excel表格成功"%data)table = data.sheet_by_name(u'Sheet2')#打开工作表sheet2logging.info("打开%s表成功"%table)nrows = table.nrows#统计行数logging.info("表中有%s行"%nrows)ncols = table.ncols#统计列数logging.info("表中有%s列"%ncols)logging.info("开始进行循环")name_1=[];url_1=[];params_1=[];type_1=[];Expected_result_1=[];Actual_result_1 =[];test_result_1=[];Remarks_1=[]#定义数组Success=0;fail=0 #初始化成功失败用例##################################################################################################################for i in range(1,nrows):#遍历excel表格 cell_A3 =table.row_values(i)#获取excel表格中的数据 name = cell_A3[0] url = cell_A3[1] params=eval(cell_A3[2]) type = cell_A3[3] error_code =cell_A3[4] Remarks =cell_A3[5] logging.info(url)#############################################################################################################################3 params =urllib.urlencode(params) #参数化处理 logging.info(params) url2 = urllib2.Request(url,params) print "***********开始执行请求************" response = urllib2.urlopen(url2) logging.info(response) apicontent = response.read() logging.info(apicontent) apicontent = json.loads(apicontent)#验证返回值 if apicontent["error_code"]==int(error_code): name2="通过" print name+"测试通过" else: name2="失败" print name+"测试失败" name_1.append(name) url_1.append(url) params_1.append(params) type_1.append(type) Expected_result_1.append(int(error_code)) Actual_result_1.append(apicontent["error_code"]) test_result_1.append(name2) Remarks_1.append(Remarks) if name2=="通过": Success+=1 elif name2=="失败": fail +=1 else: print "测试结果异常"###############################################################################################################################输出表格形式attributes =["urlname","url","params","type","Expected_result","Actual_result","test_result","Remarks"]table =pylsytable(attributes)name =name_1url =url_1params=params_1type=type_1Expected_result=Expected_result_1Actual_result =Actual_result_1test_result=test_result_1Remarks=Remarks_1table.add_data("urlname",name)table.add_data("url",url)table.add_data("params",params)table.add_data("type",type)table.add_data("Expected_result",Expected_result)table.add_data("Actual_result",Actual_result)table.add_data("test_result",test_result)table.add_data("Remarks",Remarks)table._create_table()print tableprint "成功的用例个数为:%s"%Success,"失败的用例个数为:%s"%failprint "***********执行测试成功************"执行结果:
0 0
- Python接口测试简单框架
- 简单的python http 接口自动化测试框架脚本
- 简单的python http 接口自动化测试框架脚本
- 接口测试 python 接口测试框架测试 (三)
- 接口测试 我的 python 接口测试框架
- 基于Python的接口测试框架
- 基于 python 的接口测试框架
- 初探接口测试框架--python系列4
- 初探接口测试框架--python系列3
- 初探接口测试框架--python系列2
- 初探接口测试框架--python系列1
- python实现http接口测试框架
- python的接口测试框架连接数据库
- python 接口测试框架测试报告 (二)
- python http接口测试框架示例
- Python接口测试之unittest框架
- Python+Requests接口自动化测试框架
- Python接口自动化测试框架httpautotest
- 获取JVM的dump文件
- VisualVM监控远程主机上的JAVA应用程序
- Tomcat之jvm及连接数设置
- Jmeter函数组件开发
- jmeter参数化随机取值实现
- Python接口测试简单框架
- Jenkins不同job之间传递参数
- Qt的.pro工程文件语法学习
- Windows下JIRA6.3.6安装、汉化、破解
- windows平台把UliPad添加到右键菜单
- Swift使用Alamofire上传图片等FormData表单文件的方法
- 转:自旋锁(spinlock)
- 分页查询:根据一条sql,同时获得数据总数和数据集合 MySql5PageHepler
- No input file specified PHP apache