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

Posted 疯狂的机器人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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\'))

 

以上是关于Python3+requests+unittest+log+excel+HTMLTestRunner+email框架接口自动化案例⑶——测试数据读取的主要内容,如果未能解决你的问题,请参考以下文章

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

Python+Requests实现接口自动化

Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战

python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告

python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告

python+requests接口自动化测试实战