# Jmeter Script Writer

> 生成与优化 JMeter 脚本（.jmx）及配套执行说明。当用户提到 JMeter、压测脚本、接口压测、参数化、关联、断言、线程组、性能测试、脚本调优时使用。

- Skill: `ruhedanghaoyigexuesheng/jmeter-script-writer` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add ruhedanghaoyigexuesheng/jmeter-script-writer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ruhedanghaoyigexuesheng/jmeter-script-writer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ruhedanghaoyigexuesheng (https://skillmd.com/u/ruhedanghaoyigexuesheng)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ruhedanghaoyigexuesheng/jmeter-script-writer

---


# JMeter Script Writer

用于把用户的测试目标快速转成可执行的 JMeter 方案，支持以下一体化能力：

1. 新建功能测试脚本（接口正确性、断言校验）
2. 新建性能测试脚本（并发、爬坡、持续压测）
3. 优化现有脚本（参数化、关联、断言、结构重构）
4. 定位常见问题并给出修复建议

## 输入约定

优先使用用户已有信息，常见输入：

- 接口信息：URL、方法、Header、Body、鉴权方式
- 场景信息：并发数、爬坡时长、持续时间、目标 TPS/响应时间
- 现有脚本：`.jmx` 片段、树结构描述、报错信息
- 数据策略：是否参数化、数据规模、数据循环方式

若用户信息不全，按 `references/input-spec.md` 的最小必需项追问；若用户不想补充，使用默认值并明确标注“默认假设”。

## 输出约定

默认输出 4 个区块，保证可落地：

1. **场景理解与假设**（含缺失信息与默认值）
2. **JMeter 测试计划设计**（Test Plan 树结构）
3. **可执行脚本内容**（可直接保存为 `.jmx` 的 XML 或关键片段）
4. **执行与验收说明**（运行命令、观察指标、通过标准）

当用户只要“快速版”时，输出精简版：设计 + 核心 `.jmx` + 一条运行命令。

## 文件落盘规则

当用户明确要求“直接生成脚本文件”或“保存到 output”时：

1. 默认输出文件路径：`output/<场景名>.jmx`
2. 文件名采用小写下划线，如：`register_api_test.jmx`
3. 在回复中同步给出文件路径、主要节点说明与执行命令

若用户未指定保存路径，仅输出 `.jmx` 内容；若指定了路径，则优先按用户路径保存。

## 能力路由

先识别用户意图，再加载对应参考文档：

- 新建功能脚本 -> `references/function-script-playbook.md`
- 新建性能脚本 -> `references/performance-script-playbook.md`
- 优化/重构脚本 -> `references/optimization-checklist.md`
- 报错定位/稳定性问题 -> `references/troubleshooting-guide.md`

如果意图混合（如“先生成功能脚本，再改造成压测脚本”），按阶段拆分输出，每阶段给独立结果。

## 工作流

1. 识别请求类型：功能脚本 / 性能脚本 / 优化调试 / 混合任务
2. 按最小输入清单补齐信息；无法补齐时声明默认假设
3. 产出测试计划树（线程组、取样器、前后置处理器、断言、监听器）
4. 生成 `.jmx` 内容或可拼装片段，确保命名清晰、结构可维护
5. 给出执行命令、验证步骤、常见失败排查
6. 对性能场景额外输出压测分级建议（冒烟/基线/峰值/稳定性）

## 生成规则

- 优先可执行：避免只给概念，不给可运行内容
- 优先稳定：默认添加必要断言、超时、重试策略建议
- 优先可维护：元素命名包含业务语义，避免 `HTTP Request 1` 这类命名
- 参数化优先：出现重复输入时，默认建议 CSV Data Set Config
- 关联优先：登录态、token、动态 ID 等默认考虑提取与复用

## 输出质量门槛

生成结果至少满足：

- 有明确线程模型（用户数、爬坡、循环或持续时间）
- 有断言策略（状态码、关键字段、错误信息）
- 有数据策略（固定值或参数化）
- 有执行方式（GUI 或非 GUI 命令）
- 有结果判定标准（至少一个成功阈值）

## 默认参数（用户未指定时）

- 协议：`https`
- HTTP 超时：连接 3000ms，响应 10000ms
- 线程组（功能验证）：1 用户，循环 1 次
- 线程组（性能基线）：20 用户，爬坡 30s，持续 5 分钟
- 断言：HTTP 200 + 关键业务字段断言

## 边界与限制

- 不伪造真实鉴权密钥、账号密码、生产域名
- 若用户提供敏感信息，提醒脱敏后再共享
- 对高风险压测（生产环境）必须提示风险与保护措施

## 快速触发示例

- “帮我按这个接口文档生成 JMeter 脚本，带参数化和断言”
- “做一个 200 并发、10 分钟的下单压测脚本，目标 P95 < 500ms”
- “这份 `.jmx` 太乱了，帮我重构并加 token 关联”
- “JMeter 报错 401，帮我排查脚本哪里有问题”
- “直接生成 jmeter 脚本文件，放到 output 目录”

