当前位置: 首页 > news >正文

Skills 驱动测试自动化:从手写脚本到智能体协作的进化之路

Skills 驱动测试自动化:从手写脚本到智能体协作的进化之路

作者:浅木·先生
发布日期:2026-06-16


一、引言:从一条手工断言说起

六年前,我所在的财政系统测试团队接到一个任务:为预算编审系统编写 200 条接口自动化用例。那时的做法是——打开 JMeter,逐个录入接口地址、配置参数、写 Beanshell 断言、整理 CSV 数据源。一个人一天最多写 15 条,200 条用例需要两周。更令人沮丧的是,预算系统的业务逻辑每季度调整一次,接口字段增删改频繁,维护成本居高不下。

那时我们就在想:能不能让 AI 来写测试脚本?答案是可以,但早期的尝试很快撞上了天花板——通用的 AI 对话能生成一段代码,但生成的内容不贴合项目规范,缺少上下文理解,无法融入现有测试框架。真正的突破,来自于Skills这个概念的提出。

今天这篇文章,我想以财政系统的测试场景为背景,完整讲述 Skills 驱动测试自动化从理论到实践的进化之路——从一个想法,到一套 YAML 配置,再到一个可交付的 Skill 包,最后进化到多 Skill 协同的智能测试体。


二、什么是 Skill?—— 给 AI 的一本"测试操作手册"

2.1 Skills 的本质

在深入技术之前,我们需要先回答一个根本问题:Skill 到底是什么?

我们团队内部有一个形象的比喻:如果把大模型比作一个刚入职的测试新人,Skills 就是培训手册。新人(大模型)有很强的学习能力(推理能力),但如果不知道你们团队怎么写用例、用什么框架、遵循什么规范,他照样会写出不合规的东西。而 Skill 就是把这些"隐性知识"显性化——告诉他"我们团队是这样写测试脚本的"。

从技术角度看,Skill 的本质是一份结构化的 Markdown 文档(通常命名为 SKILL.md),外加可选的脚本文件和资源模板。这份文档告诉 AI:

  • 这个场景的输入是什么(需求描述、接口文档、业务规则)
  • 输出应该是什么格式(测试代码、测试报告、Bug 描述)
  • 遵循什么规范和约束(命名规则、框架选择、断言策略)
  • 分几步完成,每一步做什么

2.2 Skills vs MCP:不是二选一,是互补

在做技术选型时,很多团队会问:Skills 和 MCP 有什么区别?我的理解是:Skills 是"说明书",MCP 是"工具协议"

Skills 依靠 AI 的阅读理解能力来执行——AI 读完 SKILL.md 中的步骤说明,自己决策怎么做。而 MCP 是把功能封装成持续运行的服务,通过 Tool 调用的方式暴露给 AI,函数内部的具体逻辑(鉴权、参数校验、接口调用)对 AI 是透明的。

基于这个区别,选型原则就很清晰了:

  • 流程性任务用 Skills——比如"根据接口文档生成测试用例→初始化框架→生成代码→执行测试→输出报告",这是一个有明确步骤的流程,Skills 的说明书模式天然适合。
  • 需要精确控制的场景用 MCP——比如"用 execute_sql 查数据库"“调用 MeterSphere API 创建测试计划”,这些操作需要精确的参数校验和安全控制,用 MCP 更可靠。

在实际落地中,我们往往将两者结合使用:Skill 描述"做什么"和"按什么顺序做",MCP 提供"怎么做"的具体工具。比如在接口自动化测试 Skill 中,用 MySQL MCP 的 execute_sql 工具做数据层断言校验,就是典型的 Skills + MCP 组合。


三、从零到一:打造一个 JMeter 脚本生成 Skill

为了让读者对 Skill 有一个具象的认知,我以财政系统性能压测中最常用的场景——JMeter 脚本生成——为例,完整展示一个 Skill 从设计到交付的全过程。

3.1 痛点分析

在财政系统的性能测试中,JMeter 脚本编写占了大量时间。一个典型的压测场景(比如"1000 个预算单位同时申报")需要:

  • 配置线程组、循环控制器
  • 编写 HTTP 请求默认值
  • 配置 CSV 数据源参数化
  • 添加聚合报告、查看结果树
  • 编写断言(响应状态码、响应时间、响应内容)

手动编写耗时不说,不同测试人员写出的脚本风格差异大,维护困难。如果能用 AI 自动生成规范统一的 JMX 脚本,将大幅提升效率。

3.2 架构设计

我们采用了五层架构来设计这个 Skill:

jmeter-script-writer/ ├── SKILL.md # 调度中枢(核心说明书) ├── templates/ # 模板层 │ ├── basic-threadgroup.jmx # 基础线程组模板 │ ├── csv-datasource.jmx # CSV 参数化模板 │ └── assertion-template.jmx # 断言模板 ├── references/ # 知识库(五份参考文档) │ ├── jmeter-best-practice.md # JMeter 最佳实践 │ ├── budget-api-spec.md # 预算系统接口规范 │ └── assertion-rules.md # 断言规则说明 ├── scripts/ # 校验脚本 │ ├── validate_jmx.py # 脚本结构校验 │ └── parse_input.py # 输入解析 └── output/ # 输出目录

五层职责划分:

层级职责说明
Prompt 层调用入口SKILL.md 中的触发词和意图识别
参数解析层输入处理将自然语言描述解析为结构化参数
模板渲染层JMX 生成基于模板组装完整的 JMeter 脚本
文件输出层工程打包输出可执行的 JMX + CSV 数据文件
校验容错层质量门禁结构校验、断言复核、日志输出

3.3 SKILL.md 核心配置

以下是精简后的核心配置内容:

# SKILL.md — jmeter-script-writer 调度中枢name:jmeter-script-writerdescription:根据接口信息和压测需求,自动生成规范的 JMeter 压测脚本version:1.0.0author:kongfantengtrigger:keywords:["生成压测脚本","jmeter脚本","性能测试脚本","jmx脚本"]context:["API","performance_test","
http://www.jsqmd.com/news/1075899/

相关文章:

  • GitHub Webhook 实战系列 (三):Jenkins Pipeline CI+CD 完整闭环,Push 代码自动构建、打包、远程服务器一键部署
  • Fastjson反序列化漏洞CVE-2017-18349原理与实战复现
  • Nacos未授权访问漏洞实战:从原理到修复的完整攻防指南
  • 遗传算法工程落地指南:绕过教材陷阱的四大实操支柱
  • 达梦数据库对象管理
  • 无缝迁移,稳定上智汇云:DTS迁移工具让数据库迁移化繁为简
  • 终极屏幕翻译工具:告别复制粘贴,实现真正的框选即译
  • GraphRAG 实战:从基础调用到稳定运行
  • KaTrain围棋AI训练平台:免费智能教练的终极使用指南
  • 学习ESP32—USB CDC 虚拟串口开发指南
  • 文体赛事纪念周边定制供应链解析:全品类能力图谱与场景化选型范式
  • 2026实测:专业降AI率软件这款就对了一键达标
  • 微信小程序源码安全解析:技术原理、法律风险与开发者防护指南
  • Source Han Serif思源宋体:免费开源中文字体终极指南
  • 抖音无水印下载器终极指南:3步批量保存高清视频的完整教程
  • wordpress文章页调用此文章的阅读时间
  • 3分钟解决Android重复操作:AutoTask自动化助手完整使用指南
  • 高斯混合模型与分段仿射模型的可识别性:理论与应用挑战
  • AES-GCM与SM4-GCM认证加密:原理、实现与工程实践详解
  • AI周报的工程化价值:从技术拐点到边缘部署实操
  • 【系统运维】msvcr100.dll丢失修复指南:从原理分析到5种解决方案
  • iPhone宽度时间序列回归建模实战:从数据清洗到780年外推
  • Puppeteer与Playwright自动化测试:从原理到工程实践全解析
  • 好用的国产 PLM 软件目前都有哪些?
  • 从下载到编码仅需117秒:IntelliJ IDEA 2026极简安装流水线(含自动化脚本+校验哈希值+IDE Settings Sync一键迁移)
  • 有赏文章需求83102-E触摸I2C代码初始化液晶显示屏10.1寸自带触摸In-CaII配合项目完全落地与技术支持
  • 多平台AI回答采集中统计口径的一致性设计
  • 剪辑师必备视频下载工具:支持100+主流视频网站, 4K/8K画质
  • 2026年AI论文网站全景评测:这5款工具如何重塑学术生产力
  • Tomcat任意文件包含漏洞CVE-2024-1938深度剖析与实战防护