Python3+requests+unittest+log+excel+HTMLTestRunner+email框架接口自动化案例⑶——读取测试数据

一、测试数据

API_TestCase.xlsx

F1:get请求测试数据

F2:POST请求测试数据

F3:PUT请求测试数据

F4:DELETE请求测试数据

二、测试数据读取方法

readExcel.py

# _*_ coding:utf-8 _*_
from Common import getPathInfo
import xlrd,os

class readExcel(object):
    def __init__(self,xlsx_name):
        path = getPathInfo.get_Path()                               #获得上级目录路径
        self.xlsPath = os.path.join(path, 'TestData', xlsx_name)    #获取用例文件路径
        self.file = xlrd.open_workbook(self.xlsPath)                #打开用例Excel

    def get_sheetnames(self):
        "返回所有sheet名称"
        names=self.file.sheet_names()
        return names

    def get_xlsx(self,sheet):
        "获取Excel中测试用例相关信息"
        list = []                                                   #定义一个空列表
        sheet = self.file.sheet_by_name(sheet)                      #获得指定sheet数据
        row_value1 = sheet.row_values(0)                            #获取第1行的标题
        nrows = sheet.nrows                                         #获取当前sheet行数
        ncols = sheet.ncols                                         #获取当前sheet列数
        for i in range(1, nrows):                                   #从第2行遍历当前sheet
            row = sheet.row_values(i)                               #获取行数据
            dict = {}                                               #创建空字典
            for j in range(0, ncols):                               #遍历sheet列,组成字典
                if row_value1[j] == 'NO.' or row_value1[j] == 'code':
                    dict[row_value1[j]] = int(row[j])               #NO和code值取int
                else:
                    dict[row_value1[j]] = row[j]                    #从第一列开始,将每一列的数据与第1行的数据组成一个键值对,形成字典
            list.append(dict)                                       #将字典添加list中
        return list                                                 #返回列表

if __name__ == '__main__':                       #测试一下方法是否可用
    x=readExcel('API_TestCase.xlsx')
    print(x.get_sheetnames())
    print(x.get_xlsx('F1'))
—————————————————————————————— 选择正确的事、再把事做正确 ——————————————————————————————
原文地址:https://www.cnblogs.com/airb/p/13323637.html