python接口自动化测试框架

前言

忘记从哪篇文章得到的框架了,后面还可以按需优化,整体还行吧,目前比较简单,不过也可以在项目中使用,下面记录下

框架

测试数据

xls格式的文件,jinrongcase.xls

整体形式

python+request+excel/html_report+sendmail,

代码结构

先看下结构(其实这里可以把7拿出来,建立一个testcase文件夹,将测试用例独立出来,再搞一个run文件夹专门放启动代码的脚本):

说明下:他的测试结果有两种呈现方式,一个是 在原测试用例excel中写入实际测试结果的excel文件:

还有一个就是html的一个report:

如果在项目中使用,个人建议后期把他的html的report优化下,改成用HTMLTestRunner(网上有,搜一下)这个文件输出的报告,会好看一点,比如下面这个(后期有时间或者有机会我会优化好提供出来):

详细介绍

自动化测试的思路:

处理数据→请求数据→断言结果→输出报告→邮件通知

1. 数据预处理

处理数据,这个地方使用的是python的 wlrd库,读写excel文件

excelutils.py→excel用例读取,获取用例条数,用例内容,另外额外提供了一个写入excel的方法,为后期将测试结果写回到excel做准备,

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author : zhh
# @Tel    : 1871253****
# @Time   : 2020/3/25 22:05
# @File   : demo.py

import xlrd
from xlutils.copy import copy

'''
本部分是读取excel里面的测试用例。获取其中的内容

'''

class ExcelUtils:
    # 初始化的函数
    def __init__(self, excel_file="../dataconfig/jinrongcase.xls",table_index=0):
        #打开工作簿
        workbook = xlrd.open_workbook(excel_file)
        # 获取对应的表
        self.table = workbook.sheets()[table_index]
        self.excel_file = excel_file
        self.workbook = workbook
    # 能够获取当前多少个测试用例
    def getCaseCount(self):
        return self.table.nrows # 表格的行数

    # 获取单元格内容
    def getExcelData(self, row, col):
        return self.table.cell_value(row, col)

    # 写入单元格内容
    def writeExcelData(self, row, col, value):
        #先重新打开工作簿
        read_data = xlrd.open_workbook(self.excel_file)
        #copy复制保留
        write_data = copy(read_data)
        #获取第一个工作表
        sheet_data = write_data.get_sheet(0)
        #写入内容
        sheet_data.write(row, col, value)
        #保存
        write_data.save(self.excel_file)


# if __name__ == '__main__':
#     excelUtils = ExcelUtils()
#     print(excelUtils.getCaseCount())
#     print(excelUtils.getExcelData(0, 5))
#     excelUtils.writeExcelData(3, 12, "我我我")
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值