颠覆传统接口测试!用 Streamlit + SQLite + GPT 打造可视化自动化平台

💡 系列推荐:B站搜索「Python自动化办公2.0」课程,带你零基础进阶自动化专家!仅供付费学员可获得项目资料和代码 ,视频教程,项目源码,讲师1v1

🎯 前言

在自动化测试的世界里,市面上已有不少成熟的工具------Postman、JMeter、甚至是 Pytest + Allure。但它们要么学习成本高、要么不够灵活,尤其不适合快速构建一套"自定义可视化+变量驱动+自动化执行"的一体化平台。

如果你曾经这样想过:

能不能不写代码也能配置接口测试用例?

能不能像 Postman 那样做参数提取、变量替换?

能不能自己搭一个 All-in-One 的平台,自己掌控测试流程?

最重要:我想在 公司内部部署一套轻量级测试系统!

那么,这篇文章,就是为你准备的!

🧩 平台亮点功能速览

功能模块 描述

✅ 用例管理 无需写代码,自定义请求参数、Header、期望响应

📦 变量提取 支持响应中提取值到全局上下文变量,如 user_id=data.id

🔁 全局替换 所有参数/URL/响应预期中支持 {{变量}} 替换,或 变量 直接插入

📊 执行报告 可视化展示测试结果,失败自动重试、可导出 Excel

🧠 GPT 融合 支持 LLM 智能分析失败原因(可扩展)

🚀 一键部署 全部基于 Streamlit + SQLite,轻松部署上线

🧱 技术架构图

markdown

复制

编辑

┌────────────────────┐

│ Streamlit 前端界面 │

└────────┬───────────┘

│

▼

┌─────────────────────────────┐

│ 业务逻辑模块(接口执行引擎)│

├────────────┬───────────────┤

│ 异步支持 │ 上下文变量系统 │

└────────────┴───────────────┘

│

▼

┌──────────────────────────────┐

│ SQLite 数据库(用例+变量持久化)│

└──────────────────────────────┘

🔍 关键模块详解

🧠 全局上下文变量管理器:GlobalContextManager

我们实现了一个类 Postman 的变量替换机制:

python 复制代码
endpoint = "https://reqres.in/api/users/{{user_id}}"
params = {"name": "{{user_name}}"}

{{变量名}}:自动加引号(适合 JSON)

变量名:原始插值(适合 URL / 数字场景)

替换前不合法的 JSON,替换后自动变成可解析格式!

还支持提取规则:

python 复制代码
"extract_vars": "token=access.token, user_id=data.id"

只需在用例中配置,执行后自动提取并写入上下文,无需写一行代码!

🚀 异步接口执行引擎:支持顺序 / 并发

利用 httpx.AsyncClient + 自定义 async_runner,我们支持:

并发批量执行(提升效率)

单个失败可自动重试

响应时间统计、状态码检查、响应匹配

🧰 用例 CRUD + 可视化编辑

配合 Streamlit 表单组件,我们让整个用例管理变得 像 Excel 一样简单:

下拉框选中用例

表单编辑请求参数 / Headers / 预期响应

实时校验 JSON 格式

保存即可更新 SQLite 数据库

💻 效果演示(界面截图)

✅ 支持用例列表、表单编辑、变量预览、执行结果展示。

👇👇👇👇👇

(此处放几张关键 UI 界面图:用例表单、执行报告、变量展示)

运行环境:Python 3.10+,pip install -r requirements.txt

启动命令:streamlit run main.py

默认数据库:sqlite:///api_test.db

📚 延伸阅读与实战推荐

🎥 推荐课程:Python 自动化办公2.0

📍 访问方式:打开 B站,搜索 Python 自动化办公2.0

该课程涵盖:

自动化办公实战(Excel/邮件/网页)

接口测试自动化平台构建

AI 大模型集成,任务智能分析

真实项目案例演练

🧠 最后的话

本平台虽小,却是企业接口测试自动化系统的一个微缩模型。无论你是 QA、开发、自动化运维人员,还是想用 AI 提升测试效率的工程师,这都是一个 极佳的落地实践。

👉 立即关注 B站《Python 自动化办公2.0》,让你的测试工作效率翻倍!

需要我帮你:

相关推荐
火云代理1 天前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
专注仿真3 天前
自动化测试实战项目开发:从零搭建一套可落地的测试框架
自动化测试
freejackman5 天前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
坐吃山猪5 天前
Python22-PostMan调试MCP
测试工具·postman·mcp
测试界的小码农6 天前
【 AI Agent 软件测试实战(05):任务规划与状态管理,让 Agent 学会拆解复杂测试任务】
人工智能·测试工具
和粒科技8 天前
热重分析仪TG 309 Libra Classic
测试工具
猴哥聊项目管理10 天前
自动化测试管理工具实战:从手工测试到自动化提效的转型路径
自动化测试·测试用例管理·测试管理工具·自动化测试管理工具·手工测试转型
芥子沫12 天前
从零开始用 Docker 部署 Hoppscotch:自建 API 调试平台的完整教程
docker·接口测试·api开发·api管理
螺丝钉tina14 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
梧桐16815 天前
14天、31个缺陷、28个测试脚本—用 Claude Code 完成第三方软件测试
人工智能·测试工具