当前位置:首页>python>基于python的测试框架03-整体架构设计

基于python的测试框架03-整体架构设计

  • 2026-10-11 05:40:22
基于python的测试框架03-整体架构设计
0、前言
前几篇我们介绍了pytest的基本用法和日志模块的封装,本篇我们聚焦于自动化测试框架的搭建。从整体架构出发,逐步构建一个完整的接口自动化测试框架,主要涵盖:数据层、核心层、报告层、执行层及被测对象,后续再将其扩展应用到ECU的相关测试中——因为无论是接口测试还是车载诊断测试,其底层逻辑都是相通的:数据驱动、请求发送、结果断言以及报告的生成。
1、整体架构图
如下图所示,整个框架有五层结构:数据层、核心层、报告层、执行层和被测对象。从图中可以看出整个架构的运行逻辑:用例仓库→流程调度器→请求收发器→被测对象→结果验证器→报告生成器,形成一个较完整的闭环。
2、数据层
数据层用于存放测试用例和配置文件,其设计的目标是为数据驱动测试,即在尽可能不修改代码的情况下,通过修改YAML文件来新增/修改/删除测试用例。
3、核心层
核心层是整个框架的核心,主要涵盖8个子模块:执行驱动器、前后置处理器、动态数据源(数据总线)、流程调度器、请求收发器、数据读写器、结果验证器、日志记录器。
4、报告层
报告层是整个框架运行完成后的最终体现,主要利用allure来生成HTML格式的报告。
5、执行层
执行层是整个框架的启动入口和调度中心,主要负责驱动测试执行、控制运行的流程、协调各层的运行。
6、被测对象
被测对象是基于Python + FastAPI 开发的轻量级电商系统模拟接口,它提供了用户、商品、订单的增删改查以及登录、异常模拟等功能,专用于接口自动化测试练习,重启后数据自动重置,适合反复测试。
  • 运行页面

  • 简单验证

# -*- coding: utf-8 -*-import requestsprint("=" * 50)print("🚀 简单测试登录接口")base_url="http://localhost:8000"res=requests.post(url=f"{base_url}/api/auth/login",json={"username": "admin", "password": "admin123"})print(res.text)print("✅ 测试完成!")
==================================================🚀 简单测试登录接口{"code":200,"message":"登录成功","data":{"token":"mock_token_admin_2024","user_id":1,"username":"admin","role":"admin","expires_in":7200}}✅ 测试完成!
7、小结
本篇我们对整个自动化测试框架的架构进行了梳理,明确了各层之间的协作关系。后续我们将在上述基础上,正式进入框架各模块的搭建与实现。

最新文章

随机文章