python接口自动化之Excel封装
excel封装代码如下:
* coding: utf-8 *
#导入操作excel文件的类
import json
import xlrd
class ExcelUtil:
def __init__(self, sheet,excel_path=None):
if excel_path:
self.excel_path = excel_path
else:
self.excel_path = r'D:\requesttest\requestchange\DataExcel\TestLogin.xlsx'
self.data = xlrd.open_workbook(self.excel_path)
self.table = self.data.sheet_by_name(sheet)
# 获取总行数值
self.rowNum = self.table.nrows
# 获取总列数值
self.colNum = self.table.ncols
#获取数据函数
def get_data(self):
data = []
for i in range(1,self.rowNum):
#获取某一列的信息
test_data= {}
test_data['CaseName'] = self.table.cell(i, 0).value
test_data['Url'] = self.table.cell(i, 1).value
test_data['Payload'] = self.table.cell(i, 3).value
test_data['StatusCode'] = self.table.cell(i, 4).value
test_data['Expected'] = self.table.cell(i, 5).value
data.append(test_data)
#遍历所有数据,将最后字符串格式的json数据转换为json格式数据
json.dumps(data, ensure_ascii=False)
#返回获取的内容
return data
if __name__ == "__main__":
# #设置需要读取的excel地址和excel中的参数信息
excel = ExcelUtil(sheet='createholiday').get_data()
#获取第一行Url列的数据
print(excel[0]['Url'])
注意:
1.列名与位置要与创建的url保持一致
2.需要通过json.dumps(data, ensure_ascii=False)将读取的数据转换为json格式的数据
3.需要导入json,xlrd包
4.调用的时候需要传入对应的sheet名称