Benchmark 是一个性能基线与回归检测工具,帮助团队量化性能变化并发现性能回退。
用途
Benchmark 适用于以下场景:在提交 PR 前后测量性能影响;为项目建立性能基线;当用户反馈“感觉变慢”时进行排查;在发布前确认是否达到性能目标;对比自身技术栈与替代方案。
主要能力
工具包含四种模式。
模式一:页面性能。通过浏览器 MCP 测量真实浏览器指标:依次访问每个目标 URL,测量 Core Web Vitals,包括 LCP(目标 < 2.5s)、CLS(目标 < 0.1)、INP(目标 < 200ms)、FCP(目标 < 1.8s)、TTFB(目标 < 800ms);测量资源体积,包括页面总体积(目标 < 1MB)、JS bundle 体积(目标 < 200KB gzipped)、CSS 体积、图片体积、第三方脚本体积;统计网络请求数量;检查是否存在阻塞渲染的资源。
模式二:API 性能。对每个端点发起 100 次请求,测量 p50、p95、p99 延迟,跟踪响应体积与状态码,在 10 个并发请求下进行负载测试,并与 SLA 目标对比。
模式三:构建性能。测量开发反馈循环,包括冷构建时间、热重载时间(HMR)、测试套件耗时、TypeScript 检查时间、Lint 时间、Docker 构建时间。
模式四:前后对比。在变更前后分别运行以测量影响:先执行 /benchmark baseline 保存当前指标,进行修改后再执行 /benchmark compare 与基线对比。输出为对比表格,包含指标、变更前、变更后、差值和判定(如 WARNING 或 BETTER)。
使用方式
通过命令调用:/benchmark baseline 保存当前指标作为基线;/benchmark compare 与基线进行对比。基线以 JSON 格式存储在 .ecc/benchmarks/ 目录中,并纳入 Git 跟踪,使团队可以共享基线。
集成
可在 CI 中对每个 PR 运行 /benchmark compare;可与 /canary-watch 配合进行部署后监控;可与 /browser-qa 配合完成完整的发布前检查清单。
限制
资料未提供关于收费、价格、平台支持范围、具体安装步骤或性能目标之外的更多约束信息。