作为一名测试工程师,入行近五年,我一直想着打造一个自动化测试平台(不知道是不是 49 入国军)。近两年,借助 AI 的帮助,我的前端能力得到了显著提升,也是将项目空余时间弄了起来。
技术栈
后端:FastAPI
接口请求:Httpx
UI 自动化:Playwright
前端:React + Ant Design
核心运行 cases 逻辑 简单
for case in cases:
execute(case)
虽然这种方式已经能够满足基本需求,但我一直在思考是否有更高效、更强大的运行方式。如果你有更好的建议,欢迎分享!
git 地址 https://github.com/Caoyongqi912/case_auto_hub
readme 中 展示图更多
接口自动化能力
基础 HTTP 请求:支持多种 HTTP 请求类型(GET、POST、PUT、DELETE 等)。
变量提取与写入:可从响应中提取变量,支持在后续请求中使用。
断言功能:提供响应状态码、内容等多种断言验证。
前后置脚本:在用例执行前后执行自定义 Python 脚本。
调试模式:逐步执行测试用例,便于精准排查问题。
用例执行:支持单个或批量用例的执行。
定时任务:定时执行接口测试任务,适用于定期测试。
报告展示:自动生成并展示 HTML 格式的测试报告,明确显示成功与失败的详细信息。
实时日志可视化:在测试执行过程中实时展示日志,便于进度监控。
接口录制(未完善):录制接口请求并快速生成对应的测试用例。(计划在未来版本中实现)
UI 自动化功能
✨ Playwright :
UI 自动化支持:集成了 Playwright,能够执行浏览器自动化测试,模拟用户操作界面。
步骤录入:支持在 UI 测试中录入测试步骤,便于快速创建测试用例。
前后置接口请求:每个步骤可与前后置接口请求结合,动态调整测试流程。
全局变量:支持全局变量的管理,步骤和请求中的变量可以全局共享,方便管理和使用。
公共步骤编辑:支持创建和管理公共步骤,可以重复使用,减少冗余,提升效率。
任务管理:与接口测试类似,UI 测试任务支持定时执行与结果推送,支持企业微信等推送方式。
SQL 支持(未完成):计划在未来版本中支持 SQL 操作,增强数据处理能力。
IF 条件判断执行:支持根据条件判断执行特定步骤,灵活控制测试流程。
放几张最新的图:
首页:
API 列表
API 详情
日志
图太多不想截了。 具体可以去 git 上看看
给一些宝贵的建议