常用的管理测试用例的方法:excel、yaml
接口测试用例:
表头:请求url、请求头、请求方法、请求体、期望结果、返回结果(写入)
工作表:根据业务模块,分为不同的工作表
目标:
python+requests+xlrd读取excel
步骤:
- excel测试用例读取
- 接口请求代码构建
- 测试结果写入excel
读取excel步骤
1.使用exlr模块-打开excel:
wookbook=xlrd.open_workbook('文件路径',formateting_info=True)
formateting_info=True表示保持文件的原格式
2.使用xlrd模块-获取excle工作表名称
sheetname=wookbook.sheet_names()
casesheet=wookbook.sheet_by_name('用例所在工作表名称')
3.使用xlrd模块-获取指定单元格数据(接口入参)
第一种方式: data=casesheet.cell_values(x,y) #x,y为用例所在的单元格的行序号和列序号,表格内的序号从0开始
第二种方式:data=casesheet.cell(x,y).value
以上方式获取到的单元格的数据,是“str”字符串类型。
4.获取的到单元格数据类型进行转换
转为字典:body=json.loads(data)
转为字符串:body=str(data)
5.使用xlutils将测试用例表格复制一份
一般情况下,测试用例原表格不做变动,如果直接将测试结果写入原测试用例表格内,那么其他人使用表格时,里面就已有他人的测试结果了。所以在记录测试结果时,事先将原测试用例复制一份后,再将测试结果写入新的测试用例表格内。
import xlutils.copy import copy
new=copy()
new_sheet=new.get_sheet(工作表的编号)
5.将请求结果写入复制好的表格内
ws.write(行坐标,列坐标,写入的内容)
6.保存写入的结果
ws.save('文件路径/文件名称') #会自动生成新的文件