发一下接口自动化测试框架(python3+requests+excel)

Git: https://github.com/lilinyu861/Interface-Test
环境配置:

开发工具:pycharm2018+Excel

开发框架:python3+requests+excel

接口自动化测试框架介绍:

此接口测试框架,首先由用户设计原始的测试用例并为测试用例写用例注解,将原始测试用例写入excel文件中保存到data_origin文件夹中,例如下图所示在这里插入图片描述
然后调用common文件夹中的generateTestcases.py中的generate_testcases()方法,向方法中传入参数,参数内容包括原始测试用例excel文件位置,生成测试用例excel文件后的保存位置,生成测试用例注解excel文件后的保存位置。

生成测试用例excel文件如下所示:

在这里插入图片描述
生成测试用例注解excel文件如下所示:

在这里插入图片描述

测试用例生成之后,可以编辑接口测试代码,执行接口测试,然后将测试用例的数据写入excel文件中并存储在reports文件夹中。

接口自动化测试框架各模块详细介绍:

整个测试框架的结构如下图所示:

扫描二维码关注公众号,回复: 14957279 查看本文章

在这里插入图片描述

  • common 存放公用的方法
  • common_data 存放公用的数据
  • data 存放测试用例的excel文件
  • data_origin 存放原始测试用例的excel文件
  • reports 存放记录接口测试用例返回报文的excel文件
  • test 测试测试框架的方法能否正常执行
  • testcase 存放接口测试编写的测试用例
     

整个测试框架主要分为两部分:测试用例生成,接口测试执行

一、 测试用例的生成:

用户将存储原始测试用例的excel文件放到data_origin文件夹中;

编辑接口测试脚本,在接口测试脚本中调用generateTestcase.py文件的generate_testcases方法,生成测试用例并将测试用例写入excel文件存储在data文件夹中。
 

二、 接口测试执行

  1. 接口测试脚本编写,首先读取data文件中的测试用例,并将测试用例生成json格式数据

  2. 调用reqMethod里的请求方法,进行接口测试

将接口测试返回数据写入excel文件并保存在reports文件夹中。


"""
接口测试
读取excel中的原始数据,经处理后生成测试用例,利用测试用例对接口进行测试,将接口测试返回结果存放到excel文件中。
"""
from common.generateTestcases import GenerateTestcases
from common.excelToDic import ExcelToDic
from common_data.interfaceUrl import Url
from common.reqMethod import RequestMethod
import xlwt
 
 
login_url = Url.login_url
# 原始数据表格位置
origin_excel_path = '../test/data_origin/test_read_excel.xlsx'
# 测试用例数据存放位置
excel_case_1 = '../test/data/test_case_01.xls'
# 测试用例解释数据存放位置
excel_case_2 = '../test/data/test_case_02.xls'
save_path = '../test/reports/report.xls'
g = GenerateTestcases()
# 生成测试用例及测试用例解释的excel文件
g.generate_testcases(origin_excel_path, excel_case_1, excel_case_2)
# 写入的excel
book = xlwt.Workbook(encoding="utf-8")
sheet = book.add_sheet('Sheet1', cell_overwrite_ok=True)
# 报文头
headers = {
    'Content-Type': 'application/json'
}
# 将测试用例写入excel文件中
test_cases = ExcelToDic().getExcelData(excel_case_1, 'Sheet1')
print(test_cases)
len = len(test_cases)
for i in range(len):
    print(test_cases[i])
    response = RequestMethod().post(interface_url=login_url,
                                    headers=headers,
                                    data=test_cases[i])
    print(i, response)
 
    # 将数据写入i行j列
    sheet.write(0, 0, 'email')
    sheet.write(0, 1, 'password')
    sheet.write(0, 2, 'response')
    sheet.write(i+1, 0, test_cases[i]['email'])
    sheet.write(i+1, 1, test_cases[i]['password'])
    sheet.write(i+1, 2, response.text)
book.save(save_path)

生成的接口测试结果如下图所示:

在这里插入图片描述

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

猜你喜欢

转载自blog.csdn.net/okcross0/article/details/130406033