作为一名几乎零代码能力的QA测试工程师,我全程未手写一行代码,依托Vibe Coding模式与精细化提示词,从零开发出一款免费、带图形界面、全平台兼容的HTTPS抓包工具。
本文核心干货:限制大模型无效迭代的约束技巧、可直接复用的三段式标准提示词、QA零代码开发完整迭代与避坑流程,读者可直接复刻同款测试工具。
一、现有抓包工具痛点
日常接口测试与问题排查中,抓包是QA高频刚需能力。目前主流抓包工具各有短板,难以完美适配企业办公规范与测试日常使用场景:
-
Charles:功能全面,但正版授权成本高,试用期功能受限;破解版存在安全风险,企业内网禁止使用。
-
Fiddler:Windows端体验尚可,Mac及移动端适配较差,软件界面老旧,配置流程繁琐。
-
mitmproxy:抓包能力强劲,但仅支持命令行操作,无可视化界面,测试人员上手门槛高。
-
Wireshark:聚焦底层网络协议分析,业务HTTP/HTTPS接口需要手动过滤冗余流量,不适合快速定位业务问题。
基于以上痛点,不会写代码的我,计划自研一款面向测试人员的专属抓包工具:免费开源、全平台适配、可视化GUI界面、配置极简,完全贴合接口测试工作场景。
二、零代码开发方案:双AI协同Vibe Coding工作流
2.1 核心模式介绍
Vibe Coding核心逻辑:使用者仅负责需求提出、功能验收与问题反馈,架构设计、代码编写、BUG修复等全部技术工作交由AI完成。
针对小白不会撰写专业提示词的痛点,我搭建了AI联动AI的协作流程, 让AI帮我把大白话翻译成专业提示词:
我(大白话描述业务需求) → 豆包(口语需求转为专业开发提示词) → Trae IDE(依据提示词生成完整项目代码)
三方分工明确:我负责需求与验收,豆包负责提示词优化,Trae IDE负责代码落地。
2.2 关键前提:如何让豆包精准输出编程提示词
写到这里,很多同行肯定会有两个疑问:
- 我完全不懂代码,我也知道让AI帮我写代码需要好的提示词,但到底该怎么写?
- 怎样让豆包不会直接帮我写代码,而是乖乖帮我生成专业提示词?
其实我一开始也踩过坑,直接发需求后,AI要么直接开始写代码,要么反问我技术选型,完全达不到我想要的效果。
后来我才明白关键:第一次对话一定要提前给AI定好角色和工作边界,明确告诉它该干什么、不该干什么,不然AI会按照默认逻辑自作主张。
我固定用的开场白(大家直接复制就能用):
核心关键:首次对话必须给AI固定角色+明确任务边界,否则AI会默认直接帮你开发工具、答疑解惑,而非帮你加工提示词。
我和豆包的开局固定指令(直接照搬即可):
你是一个提示词工程师。我想用AI辅助开发一个工具,但我不懂代码。我会用大白话描述我想要的功能,你帮我把这些需求整理成结构化的、专业的AI编程提示词,这样我可以把提示词给另一个AI去生成代码。
这句开场白看着简单,其实搞定了三个关键问题,也是我小白踩坑总结出来的经验:
-
角色锁定:定义AI为提示词工程师,而非代码开发助手;
-
明确任务:只做大白话转结构化编程提示词,不写代码、不答疑;
-
说明用途:产出的提示词需要交付给其他AI进行代码生成,对齐输出规范。
💡小白真实避坑提醒:这一步千万别省。我最开始没设置角色,AI每次都直接撸代码,根本没法实现「AI帮我写提示词、再给另一个AI写代码」的流程,白白浪费很多时间。
完成一次角色绑定后,后续全程无需重复发指令,直接大白话提需求即可,示例:
我想做个抓包工具,要能抓HTTPS,要有个图形界面,能过滤域名。
只要第一次绑定好角色,后续不用重复发这段话,直接随口说需求就行,AI会一直记住定位,全程只产出标准编程提示词,特别省心。
三、核心:三段式标准化开发提示词
提示词是AI开发的核心,我采用「定规则-做架构-写代码」三段式提示词,循序渐进开发,避免项目结构混乱、后期难以迭代。
3.1 全局开发规则(约束AI行为,避免反向提问)
# 一、全局开发规则(全程遵守)
你严格进入 Vibe Coding 专业开发模式,全程遵守以下规则:
1. 我仅负责需求描述与功能验收,不参与代码编写与技术细节讨论。
2. 代码模块化拆分,按功能划分目录与文件,禁止代码堆砌。
3. 代码规范统一,注释清晰,变量命名语义化,支持Windows、Mac跨平台运行。
4. 迭代更新仅做增量修改,禁止全局重写代码,保证原有功能稳定。
5. 程序报错直接输出修复后完整代码,无需反问、无需多余解释。
3.2 架构设计提示词(前置规划,拒绝无序编码)
# 二、架构设计要求
先为【全平台 HTTPS 抓包工具】设计清晰的项目架构,确认后再进行代码开发:
1. 输出完整项目目录结构;
2. 划分五大模块:GUI界面、代理服务、抓包核心、工具函数、全局配置;
3. 明确主程序、mitmproxy插件、数据通信格式与整体数据流向;
4. 架构方案确认无误后,再启动代码生成。
3.3 项目代码生成提示词
# 三、项目生成要求(架构确认后执行)
## 技术栈
Python + mitmproxy + tkinter
## 功能要求
1. 支持HTTPS报文自动明文解密;
2. 适配PC、安卓、iOS全平台抓包;
3. 可视化界面实时展示接口请求列表、请求头/响应头、请求体/响应体;
4. 支持域名白名单、关键词、请求方法、状态码多条件组合过滤;
5. 支持抓包日志导出、证书目录快速打开、本机局域网IP展示;
6. 代理服务一键启停,自带端口检测,关闭后无后台残留进程;
7. 代码具备异常捕获能力,线程安全,长时间运行不崩溃。
## 输出要求
1. 严格按照既定架构分文件输出源码;
2. 单一文件单一职责,代码可读性高;
3. 附带依赖清单、启动命令;
4. 配套移动端代理与证书安装教程。
| 阶段 | 作用 | 核心关键词 |
|---|---|---|
| 全局开发规则 | 约束AI行为 | 增量修改、模块化、禁止重写 |
| 架构设计提示词 | 前置规划 | 目录结构、数据流向、模块划分 |
| 项目代码生成提示词 | 功能落地 | 技术栈、功能清单、输出规范 |
3.4 进阶技巧:约束大模型过度自主修改
实际开发中发现,大模型容易自主额外修改代码、重构界面,引入未知BUG。因此需要额外增加约束提示词,明确AI能做什么、不能做什么:
# 约束条件(强制生效)
1. 所有迭代仅做增量修改,禁止重写已有代码;
2. 新增功能独立新建文件,不改动原有项目结构;
3. 不修改已稳定的接口逻辑与数据流向;
4. 需求不明确时,以最小改动原则实现功能;
5. 修复BUG仅改动异常代码片段,不影响其他正常模块。
效果对比:无约束时,小幅功能需求会引发全局代码重构,新增多处BUG;增加约束后,AI仅针对性修改对应模块,原有代码完全不受影响。
四、提示词落地:代码生成、验收与迭代
三段式提示词在豆包那里打磨好后,下一步就是把提示词喂给Trae IDE,让它生成完整项目代码。
4.1 给Trae IDE投喂提示词
操作很简单:
- 打开Trae IDE,新建一个项目文件夹
- 把豆包帮你生成的三段式提示词(全局规则 + 架构设计 + 项目生成要求)一次性粘贴到对话框
- 等待Trae IDE分析提示词并生成代码
过程截图
注意事项:
- 提示词要一次性完整粘贴,不要分段发,否则AI可能理解不完整
- 生成过程中不要打断,等AI全部输出完再验收,中间会有多次询问,选是/运行即可
4.2 验收三步走
Trae IDE生成代码后,不要急着运行,先做三步检查:
第一步:看目录结构 确认AI生成的文件目录是否和架构设计一致,模块是否按预期拆分。
第二步:看依赖清单
检查是否生成了requirements.txt或类似的依赖文件,确认技术栈是否正确。
第三步:按运行说明启动 按照AI附带的运行命令,安装依赖、启动程序,看是否能正常运行。
4.3 运行后的迭代优化
4.3.1 运行报错怎么办
第一次运行大概率会报错,这很正常。处理方式:
- 直接复制完整报错信息,粘贴给Trae IDE
- 加一句简单描述:"报错了,帮忙修复"
- Trae IDE会分析报错并给出修复后的代码
- 替换对应文件,重新运行
不需要懂代码、不需要看报错原因,直接把报错丢给AI就行。这是零代码开发最核心的技巧。
💡 进阶技巧:遇到复杂报错时,可以在Trae IDE中调用 TRAE-debugger 技能(在对话输入框输入
/即可选择)。它会自动采集运行时日志、定位根因并给出修复方案,比自己复制报错信息更精准高效。
4.3.2 功能不符怎么办
有时候代码能运行,但功能和你想要的不一样。比如:
- 你要的是"组合过滤",AI做成了"单选过滤"
- 你要的是"树形结构",AI做成了"平铺列表"
这时候只需要用大白话重新描述差异:
"过滤功能不对,我要的是同时支持关键词、方法、状态码组合筛选,不是只能选一个。"
Trae IDE会根据你的描述调整代码,直到符合预期。
4.3.3 界面不好看怎么办
Trae IDE默认生成的界面可能比较简陋。直接提UI优化需求即可:
"界面太丑了,调整一下布局,间距大一点,字体好看一点。"
AI会优化控件间距、统一字体、调整分区布局,不需要你懂前端知识。
💡 进阶技巧:如果想一步到位做出更精致的界面,可以调用 Trae IDE 的 frontend-design 技能(在对话输入框输入
/即可选择)。它能输出更专业的前端设计和布局方案,避免反复微调。
五、自研工具成品能力展示
5.1 双视图切换(对标Charles使用习惯)
Structure结构视图:按域名、接口路径分层展示,可折叠归类,方便梳理整条业务链路接口。
Sequence时序视图:按请求时间线性展示,一行直观展示请求方式、URL、状态码、请求耗时,快速定位异常请求。
5.2 人性化流量高亮
新增请求自动蓝色高亮,历史请求自动置灰;仅具体接口节点高亮,上层域名与目录保持原色,清晰区分新旧网络流量。
5.3 移动端扫码一键配网
内置二维码生成功能,手机扫码可直接查看代理IP与端口、一键下载对应系统HTTPS证书;针对安卓设备,额外支持证书内容一键复制,简化移动端抓包配置流程。
5.4 核心功能对照表
| 功能模块 | 功能说明 | 测试场景价值 |
|---|---|---|
| 域名白名单 | 自定义展示指定域名流量 | 屏蔽埋点、第三方无关流量,规避敏感数据泄露 |
| 多条件智能过滤 | 关键词、请求方法、状态码组合过滤 | 快速筛选4xx/5xx异常接口,提升问题排查效率 |
| 完整报文查看 | 查看全量请求、响应报文 | 无需额外解密,直接定位接口参数与返回值问题 |
| 抓包日志导出 | 本地保存完整抓包记录 | 用于BUG复盘、跨团队问题同步归档 |
| 自动化证书管理 | 自动生成根证书,扫码快速安装 | 降低HTTPS抓包配置门槛,无需了解证书底层原理 |
5.5 工具落地价值
-
开源免费无版权风险,企业内网可放心使用;
-
本土化可视化界面,告别命令行操作,贴合测试使用习惯;
-
扫码极简配网,大幅降低移动端抓包配置成本;
-
分层视图+流量高亮,接口问题排查效率优于传统工具。
六、实战感悟:AI时代QA的核心竞争力
-
需求表达能力远比代码能力重要:AI时代,开发的核心是清晰描述需求而非手写代码。QA日常梳理测试场景、精准描述BUG的能力,天然适配AI协作开发。
-
Vibe Coding抹平技术门槛:无需掌握编程语法、框架原理,只要明确自身功能诉求,即可依托AI完成工具开发。
-
AI协同模式可批量复用:AI生成提示词+AI编写代码的双AI协作模式,可复用在所有测试小工具开发场景中。
-
提示词需要持续迭代优化:不存在万能提示词,结合验收反馈不断微调,才能让代码完全贴合业务需求。
-
测试验收与问题洞察能力不可替代:AI可以快速生成代码,但无法感知业务痛点、发现隐性BUG。懂业务、会验收、能精准反馈问题,依旧是QA不可替代的核心壁垒。
写在最后
抓包工具只是一个缩影。接口比对工具、日志分析脚本、简易自动化工具,所有测试日常所需的效率工具,零代码QA都可以依托这套Vibe Coding流程自主开发。
AI不会替代测试人员,但会使用AI的测试人员,会逐步拉开职场差距。
互动交流:你日常工作中常用哪款抓包工具?还有哪些测试工具想要自研?欢迎评论区留言讨论。