测试工程师也能做的 AI Agent:Skill 开发 + MCP 封装实战

发布时间:2026/10/11 1:44:38
测试工程师也能做的 AI Agent:Skill 开发 + MCP 封装实战 测试工程师也能做的AIAgentSkill开发 MCP封装实战原创 · 作者拾光笔记 标签ai / skill / MCP / 测试提效0.开篇唠嗑别再瞎用AI测试工具了做测试的小伙伴应该都深有体会日常提Bug、批量验证缺陷、写测试报告全是重复机械活枯燥又耗时间。网上一堆AI测试Agent、智能提报工具很多人用得一头雾水这些万能Skill到底从哪来自研的缺陷平台怎么对接AI怎么写出稳定、不翻车的自动化测试Skill这篇文档不讲枯燥空话把「测试AI三位一体能力」自动提Bug批量验证自动出报告、Skill标准开发流程、自研平台MCP封装、行业最佳实践全部通俗拆解内核干货拉满好读、好用、可直接落地。先理清两个核心概念90%的人都混淆过MCP ServerAI的「手脚」负责干活、调接口、操作工具对接缺陷平台、OCR识别、浏览器自动化SkillSKILL.mdAI的「脑子SOP手册」负责定规则、排流程、控输出、约束AI行为手脚MCP负责执行脑子Skill负责指挥二者搭配才能跑出丝滑稳定的AI测试自动化流程。1.核心测试三件套Skill搞定测试全流程自动化我们整套测试自动化闭环靠三个专属Skill就能完美撑起覆盖提Bug→验Bug→出报告全链路每一个都是针对性解决测试痛点的神器。下面每个 Skill 都按「核心指令解析 → 独家技巧 → 效果对比 → 目录解读」四段式拆开讲干货直接可抄。1.1Bug自动提单Skillbug-report-writer——解放你的手动写Bug双手核心本事你丢问题描述截图/录屏AI自动读懂画面、识别报错一键生成格式标准、信息完整的结构化缺陷单再也不用手动填一堆字段。自动产出完整字段问题描述、精细化复现步骤附带截图引用、真实结果、预期结果、AI初步根因定位、针对性修复建议。同时自动填充模块、测试环境、缺陷严重级别、优先级等基础信息。适配场景日常功能测试、UI测试、线上问题复盘支持多张截图批量解析、批量生成Bug草稿可一键同步Jira、TAPD、禅道、飞书项目及自研缺陷平台。1.1.1实战拆解怎么让AI只凭「一句话一张截图」写出能直接提审的Bug单一、核心指令解析RoleWorkflow先说设计思路。这个 Skill 的核心不是”生成文字”而是从证据生成字段。它把”提 Bug”这件脏活拆成一条 7 步流水线收集输入 → OCR 视觉理解 → 抽取标准字段 → 自动填充严重级/优先级/模块/环境 → 套模板 → 批量循环 → dry-run 确认 提交它有三条铁律直接写死在指令里先解析证据再下结论—— 所有字段从截图、日志、描述里抽不臆造根因是「推测」不是「定论」—— 问题定位必须写”疑似/可能” 置信度禁止”就是/肯定是”提交前必确认—— 碰平台写接口之前一律先 dry-run 预览。把这三条浓缩成一段核心指令提炼版你是缺陷提单助手。输入问题描述 截图/录屏 可选日志。工作流1. 先 OCR 视觉理解产出「图片事实清单」禁止脑补2. 按固定字段输出问题描述 / 复现步骤 / 问题定位 / 实际结果 / 预期结果 / 修复建议3. 自动填充严重级别(S1-S5)、优先级(P0-P3)、模块、环境—— 每个自动值必须附「依据」如模块订单中心依据截图面包屑4. 问题定位只能写「疑似/可能」 置信度(高/中/低)禁止「就是/肯定是」5. 截图中的手机号/token/姓名等 PII 先脱敏再入单6. 提交前先 dry-run 给用户确认确认后两步提交建单 → 上传截图附件约束缺信息标「待补充」绝不编造复现步骤/日志/环境。思维链就一句话证据→字段→依据→确认。每一步的输出都必须是上一步的”证据衍生品”而不是模型自由发挥。二、独家技巧提交Bug不是”把路径写进描述”是”把截图真正传上去”这是整个 Skill 最容易被忽略、也最值钱的设计。坑在哪很多人让 AI 在描述里写 ![截图](C:\Users\xx\1.png)以为交截图了。结果平台根本不渲染本地路径研发点开全是死链——等于没交。怎么解的两步提交先调建单 API 拿到 issue 引用如 Jira 的 key再把草稿引用的每个附件用 multipart/form-data 真正上传到该工单的附件接口。截图会真实出现在工单里。为什么这样写因为”写出来了”不等于”交付了”。Bug 单的价值在研发能复现截图没进工单就是零。额外彩蛋--dry-run 模式不联网、不需要凭证就能预览 payload 附件清单含存在性、大小、脱敏状态标”待脱敏”的附件默认阻止上传除非显式 --allow-unmasked。PII 红线从源头掐断。三、效果对比BadCase vs GoodCase没有这个 Skill有了这个 Skill口述丢给研发“订单页点了下就白屏”研发复现不了来回拉扯 3 轮自动产出结构化缺陷单复现步骤每步带截图引用 前置条件 复现概率第三方按步可复现严重级别凭感觉填S2 写成 P0研发排期全乱按判定表自动填充 S1-S5 / P0-P3每个值附推断依据截图只在描述里贴本地路径工单里全是死链建单后自动把截图/录屏作为附件上传研发点开即看手机号、token 直接贴进工单合规风险拉满入单前 PII 自动打码138****8888、TOKEN待脱敏附件禁止上传20 张截图手动一条条提写到凌晨批量循环生成 bug-001~bug-020 草稿集 汇总表一键 dry-run 后统一提交四、目录解读References是知识库Templates是输出规范bug-report-writer/|-- SKILL.md # 主流程7 步工作流 边界禁忌|-- references/| |-- field-spec.md # 知识库字段生成规则 S1-S5/P0-P3 判定表| |-- integrations.md # 平台对接Jira/TAPD/禅道/飞书项目 API 映射|-- templates/| |-- bug_report.md # 输出规范缺陷单模板字段不可删缺填待补充|-- scripts/| |-- submit_bug.py # 统一提交入口dry-run 两步建单上传附件| |-- parse_screenshot.py # 截图 OCR 视觉理解管线缺依赖优雅降级|-- config/|-- integrations.example.json # 平台配置样例凭证走环境变量不硬编码这个目录设计值得抄references 管”怎么判”改判定规则不用动代码、templates 管”长什么样”保证 100 条 Bug 单格式统一、scripts 管”怎么执行”截图真上传、dry-run 安全预览。三层分离维护成本极低。提 Bug 不是写作文是交证据。你的 AI 助手应该比你更懂”怎么让研发 30 秒复现”。1.2缺陷批量验证Skillbug-fix-verifier——告别逐条手动回归核心本事批量拉取待验证缺陷清单自动复刻Bug复现步骤模拟人工操作UI/接口智能对比修复前后差异自动判定缺陷状态。核心能力自动页面截图、捕获网络日志、智能判定「已修复/未修复/偶现/环境异常」批量闭环缺陷自动回填验证结论、截图记录适配版本上线前的批量Bug回归场景。1.2.1实战拆解让AI替你把50条Bug「复现取证判结论回填状态」全自动跑完一、核心指令解析RoleWorkflow上线前最痛苦的活是什么一条条点开 Bug、复现、截图、判断修没修好、再手动改状态。这个 Skill 把整条链自动化拉取待验证清单 → 复现步骤转可执行操作 → 自动复现取证 → 四类判定 → dry-run 汇总 → 批量回填闭环而它最反直觉、也最专业的设计是判定不是二分类是四分类。结论判定条件已修复 fixed执行 N 次原异常全部消失断言全通过P N未修复 not_fixed原异常稳定复现P 0偶现 intermittent部分通过部分失败0 P N环境问题 env_issue服务不可达/依赖缺失/账号失效等优先判定环境挂了不等于Bug没修好偶现不等于修好了。这种区分度才是测试该有的严谨。核心指令提炼版你是缺陷验证助手。输入待验证缺陷清单bug_id / 复现步骤 / 预期结果。工作流1. 严格按缺陷单的复现步骤生成操作计划UI→视觉Agent动作 / API→HTTP请求不自创路径2. 每个计划必须带断言点从「预期结果」推导3. 执行并取证过程截图 网络日志 控制台报错4. 判定四选一- 执行 N 次全部通过(PN) - 已修复 fixed- 全部失败(P0) - 未修复 not_fixed- 部分通过部分失败(0PN) - 偶现 intermittent- 环境不可用(5xx/超时/账号失效/驱动缺失) - 环境问题 env_issue优先判定5. 无证据不得下结论结论必须附截图/日志/断言结果6. 批量回填状态前先 dry-run 汇总用户确认后才写平台约束偶现嫌疑至少重复执行 5 次凭证走环境变量不硬编码。思维链复现步骤→操作计划→证据→结论→回填。每一步都只消费上一步的产物杜绝”自由发挥”。二、避坑指南环境挂了不等于Bug没修好这口锅AI不能背Naive 的自动化验证脚本长什么样环境一 502 就判”未修复”研发白白返工一轮偶现问题跑一次通过就判”已修复”上线后炸雷。这个 Skill 用两个机制掐死这两个坑env_issue优先判定。代码里 if any(env_flags): return env_issue 永远排在通过率判定前面。服务 5xx、连接超时、账号失效、浏览器驱动不可用——先问”是不是环境问题”再谈”修没修好”。判了 env_issue 就不关闭缺陷退回研发或挂起并写明具体环境原因。偶现强制多跑。疑似偶现的缺陷重复执行 N 次默认 5P N 才敢说 fixed。每次执行独立初始化状态清缓存、重新登录避免脏数据互相污染。为什么这样写自动化验证的第一原则是”别误杀也别漏放”。宁可多跑几次也不给线上埋雷。三、效果对比BadCase vs GoodCase没有这个 Skill有了这个 Skill50 条 Bug 人工逐条复现半天起步手速再快也逃不过加班批量拉清单 → 自动复现取证 → 判定单条秒级50 条分钟级出结果环境 502 挂了脚本误判”未修复”研发白返工一轮env_issue 优先判定并标注具体原因退回研发/挂起不背锅偶现 Bug 跑一次过了就关单上线后线上复现事故偶现类强制重复 5 次0PN 判 intermittent挂起待观察并附多次执行统计“修没修好”全靠验证人记忆被评审问”证据呢”就卡壳每条结论附截图 网络日志 断言结果fixed/not_fixed 都有据可查验证完手动改状态、贴结论、传截图10 分钟一条一键批量回填fixed→关闭 / not_fixed→重新打开 / intermittent→挂起 / env_issue→退回研发四、目录解读判定规则库数据契约bug-fix-verifier/|-- SKILL.md # 主流程6 步验证闭环 四类判定标准|-- references/| |-- verification-strategy.md # 知识库动词→操作映射表、判定阈值、环境问题识别清单|-- templates/| |-- verification_result.md # 输出规范验证结果模板 输入/输出 JSON 契约|-- scripts/|-- run_verification.py # 批量验证编排复现步骤→操作计划→判定含 dry-run|-- update_bug_status.py # 状态回填四类结论→平台状态映射含 dry-run看点templates/verification_result.md 不只是模板它定义了输入/输出 JSON 契约——下游的 test-report-generator 直接消费它的输出。契约先行三个 Skill 才能串成一条流水线。验证 Bug 不是”跑一遍看看”是”用证据回答它到底好没好”。让 AI 把每一次点击都变成可追溯的证明。1.3自动测试报告Skilltest-report-generator——从此告别熬夜写报告核心本事自动汇总版本测试全量数据包括用例执行结果、缺陷统计、环境信息一键生成专业、可直接对外输出的测试报告。报告核心内容版本与测试环境、用例执行统计总用例/通过/失败/阻塞、缺陷多维度统计严重度/模块/状态、失败用例详情截图、上线风险评估、准入建议。输出格式支持Markdown、HTML、PDF无需二次修改可直接发给产品、研发、评审团队。1.3.1实战拆解测试报告还靠手写让AI用「准入门禁」直接给出上线结论一、核心指令解析RoleWorkflow测完一轮最烦的是汇总统计、缺陷分布、风险评估、上线建议——数据散在用例平台、缺陷系统、验证结果三个地方。这个 Skill 把它们聚合成一份可直接分发的报告Markdown/HTML/PDF最狠的设计是“建议上线”不是AI拍的是门禁规则算出来的。核心指令提炼版你是测试报告生成助手。输入report_data.json用例执行 缺陷 批量验证结果。工作流1. 校验输入缺数据标「无数据」不编造2. 计算统计total / passed / failed / blocked / skipped / 通过率—— 通过率分母剔除 skipped不剔除 blocked阻塞未验证到要反映在风险里3. 缺陷三维聚合按严重度(S1-S5) / 按模块 / 按修复状态4. 风险条目失败用例聚类 遗留严重缺陷 阻塞用例每条带等级/影响/缓解措施5. 准入门禁按序判定命中即定级- 通过率 95% 且无 S1/S2 遗留 - 建议上线- 通过率 90%~95% 或存在 S2 有绕过方案 - 有条件上线列明前置条件- 通过率 90% 或存在 S1 未修复 - 不建议上线6. 报告结构执行摘要(一屏看重点) - 执行统计 - 缺陷汇总 - 失败详情 - 风险 - 准入结论7. 渲染 Markdown / HTML / PDFPDF 依赖缺失时优雅降级产出 HTML 转换指引约束统计数字必须可追溯准入结论必须写清命中的规则与数据依据。思维链数据→统计→聚合→风险→门禁→结论。没有一步是”感觉”。二、避坑指南让AI拍板”能不能上线”先给它一把尺子直接让 AI”评估一下能不能上线”它大概率给出”整体质量良好建议谨慎上线”——正确的废话。没有标准就没有结论。这个 Skill 的做法值得所有测试团队抄决策规则化。通过率、遗留严重缺陷、风险等级三个维度按序判定命中即定级。AI 只负责算数 对表不负责拍脑袋。口径细节是灵魂。通过率分母剔除 skipped、不剔除 blocked——因为阻塞代表”没验到”要如实反映在风险里而主动跳过的用例不该拉低通过率。这个口径如果没人定义94.9% 到底放不放行会上能吵一小时。一屏看重点。报告开头强制”执行摘要”产品看结论、研发看失败详情、评审看风险——一份报告伺候三类人谁都不用翻到底。三、效果对比BadCase vs GoodCase没有这个 Skill有了这个 Skill测试数据散落各处手抄统计容易抄错、漏算自动聚合三类数据源统计口径固定通过率/执行率/修复率数字可追溯“能不能上线”凭经验拍脑袋被评审一句”依据呢”问卡壳准入门禁规则推导每条结论附命中规则 数据依据 前置条件报告写 2 小时排版还丑产品找不到结论、研发找不到失败详情结构化报告执行摘要一屏 失败用例详情(原因/截图/关联缺陷) 风险评估各取所需通过率 94.9% 到底放不放行口径没人说得清口径明确分母剔除 skipped 不剔除 blocked90/95 阈值命中即定级发 PDF 要装一堆依赖缺一个就卡死Markdown/HTML 纯标准库直出PDF 缺依赖优雅降级绝不中断生成四、目录解读三Skill流水线的最后一环test-report-generator/|-- SKILL.md # 主流程7 步聚合 准入门禁|-- references/| |-- report-structure.md # 知识库统计口径、聚合维度、风险等级、准入门禁规则|-- templates/| |-- test_report.md # 输出规范报告模板 输入 JSON 契约|-- scripts/|-- generate_report.py # 数据 - Markdown/HTML/PDF 渲染器纯标准库串起来看三个 Skill 是一条完整的质量闭环bug-report-writer bug-fix-verifier test-report-generator提单产出缺陷单 - 验证产出验证结果JSON - 报告聚合准入结论bug-fix-verifier 输出的 verify_result.json 就是这里的输入。还能联动配套的 quality-acceptance 子技能产出面向准入评审的独立报告。测试报告的最高境界不是”写得好”是”结论有人敢签”。让 AI 帮你把每一个结论都变成算得出来的数。1.4配套辅助Skill补齐全链路能力短板visual-ocr-analyzer视觉解析SkillAI识图OCR文字提取精准识别页面弹窗、报错堆栈、文本内容为提单Skill提供核心素材。test-case-runner用例批量执行Skill自动跑UI/API测试用例全程留存截图、请求日志遇到失败自动触发提单流程。rootcause-analyzer根因增强Skill对接日志、数据库链路工具优化缺陷定位精准度输出更靠谱的修复建议告别空泛推测。2.自研缺陷平台专属MCP封装让AI对接你的私有系统很多团队都有自研缺陷管理平台但一直没法对接AI Agent核心原因就是缺少专属MCP服务。简单说封装MCP就是给你的平台开一套AI可直接调用的「智能接口」让AI能读写、操作你的缺陷系统。2.1两种MCP封装方案按需选择方案一StdioMCP新手首选、本地调试神器以独立程序形式运行通过本地标准输入输出和AI Agent通信无需域名、证书、公网部署配置简单、零门槛适合本地开发、个人调试、小团队内部使用。唯一局限是仅支持本机/内网调用。方案二HTTPMCP团队生产必备以Web服务形式部署支持公网/内网多设备、多Agent远程调用可配置权限、鉴权、日志监控适配团队共享、线上正式使用唯一缺点是需要处理HTTPS、CORS、权限校验等工程化问题。2.2自研平台MCP必开5大核心工具完美匹配测试Skill不用堆砌无用能力只需封装5个核心工具就能打通完整AI测试闭环create_bug创建缺陷接收AI生成的结构化Bug数据自动提交至自研平台支撑自动提单Skill。get_bug查询单条缺陷获取Bug详情、复现步骤、环境信息供自动验证Skill复刻问题。list_bugs批量查询缺陷按版本、状态、模块筛选Bug清单支撑批量回归验证。update_bug_status更新缺陷自动回填验证结果、截图、结论批量闭环缺陷。get_bug_statistics缺陷统计输出多维度缺陷数据为自动生成测试报告提供数据源。2.3极简落地逻辑MCP不做复杂逻辑只做一层轻量转发参数校验异常处理接收AI的调用指令 → 调用自研平台原有API → 规整返回结果 → 回传给AI Skill最大限度复用现有系统能力减少重复开发。3.Skill开发标准全流程告别野生随意编写很多人写的Skill不稳定、AI乱输出、频繁翻车本质是没有标准化流程。一套规范的Skill开发流程能让AI行为可控、输出统一、迭代省心。Step1明确需求边界杜绝万能垃圾Skill动手前先定死四件套任务目标、输入内容、输出格式、依赖工具。同时明确禁区什么能做、什么绝对不能做避免AI越权、瞎脑补、乱操作。Step2设计角色SOP执行流程给Skill设定专属职业角色如资深测试缺陷分析师编写强制顺序SOP明确工具调用时机、参数规则让AI按固定步骤执行杜绝随性发挥。Step3编写标准SKILL.md文件行业通用标准结构包含头部元数据、角色定义、强制执行SOP、固定输出模板、约束禁令、工具调用规则结构统一、可读性强、方便导入各类AI客户端。Step4Skill单场景测试覆盖正常场景、信息缺失场景、异常报错场景验证AI是否遵守规则、输出是否标准、缺参是否主动提问、是否杜绝脑补内容。Step5SkillMCP联合调通重点校验参数匹配度、MCP异常容错、接口报错友好提示避免原始堆栈信息外露保证全链路稳定运行。Step6版本管理文档沉淀Skill迭代全程版本化记录变更内容配套编写使用文档、入参示例、常见问题排查指南方便团队复用。Step7灰度上线持续观测迭代小范围灰度试用监控调用成功率、人工修正率、误操作率持续优化Prompt约束和SOP流程逐步打磨稳定。4.高能最佳实践避开90%的AISkill翻车坑4.1职责绝对隔离手脚归手脚脑子归脑子核心原则Skill只管流程编排、规则约束、输出格式MCP只管接口调用、鉴权、重试、异常处理。绝对不要把业务代码、接口逻辑写进Skill Prompt否则后期难以维护、极易出错。4.2固定输出模板封杀AI自由发挥LLM天生自带随机性所有输出必须固定字段、固定格式禁止AI增删内容、随意改写结构。所有AI推测内容必须标注「AI初步推测需人工复核」规避风险。4.3高危操作必须人工确认创建Bug、修改缺陷状态、批量更新数据等高危操作禁止AI自动执行必须先展示结果、询问用户确认再调用MCP执行杜绝批量生成垃圾数据、误改线上内容。4.4信息不足就提问严禁脑补凑数环境、版本、模块、关键报错缺失时强制AI主动询问用户不要自行猜测补齐大部分劣质Bug单都是AI脑补出来的。4.5拆分细粒度Skill拒绝巨型单体Skill不要把提单、验Bug、写报告揉进一个Skill拆分三个独立能力单元职责单一、调试简单、可单独启用停用、迭代成本更低。4.6完善异常容错机制MCP接口报错、网络异常、权限不足时Skill需规整错误信息用简洁通俗的话术提示用户禁止直接输出原始报错堆栈。5.上线前终极自查清单职责清晰Skill只管编排所有工具操作交由MCP实现依赖明确仅授权必要MCP工具无多余越权权限输出标准化固定模板字段完整无缺失风险可控高危操作需人工确认支持幂等防重复规则完善明确禁止行为杜绝AI脑补、乱操作异常可处理MCP调用失败有友好容错逻辑经过全场景测试正常/异常场景均验证通过版本可追溯迭代版本、变更记录完整6.最终落地链路可直接照搬封装自研缺陷平台MCP → 开发三大核心测试Skill → 单Skill单独调试 → 全链路联调截图解析→自动提单→批量验证→回填状态→自动出报告→ 灰度试用 → 持续迭代优化轻松搭建属于团队的私有化AI测试自动化体系。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询