1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | mocha-skill-lambdatest-agent-skills |
| 作者/维护者 | TestMu AI(原 LambdaTest) |
| 来源链接 | https://github.com/LambdaTest/agent-skills/tree/main/mocha-skill |
| 许可证 | MIT(数据来自 GitHub API) |
| GitHub Stars | 352(数据来自 GitHub API;为整个合集仓库总量,不代表本技能自身热度) |
| Forks | 69(数据来自 GitHub API,同为合集整体口径) |
| 最新版本 | 1.0(SKILL.md front matter 自述,仓库未发布正式 Release) |
| 安装方式 | 见第 10 章 |
2. 功能介绍与亮点
为 Mocha(灵活可插拔的 JavaScript 测试运行器,本身不含断言与 Mock 能力,需自行搭配库)配合 Chai(断言库)与 Sinon(Mock/Stub/Spy 库)生成生产级测试代码的技能。
- 核心语法覆盖:基于 Chai
expect的基础断言写法、常用 Chai 断言速查(相等、长度、属性、包含、异常、深度比较)、Sinon Sandbox 模式的 Mock/Stub 写法(含beforeEach/afterEach自动清理)、三种异步测试写法(Promise、async/await、回调done)逐条给出可直接套用的示例代码。 - 反模式对照表:把常见错误写法与正确写法并排列出(如漏写
done()导致测试挂起、不用 Sandbox 导致 Stub 泄漏、describe内用箭头函数导致this.timeout()失效),帮助避免典型踩坑。 - 速查命令表:
npx mocha(运行全部)、--watch(监听)、--grep(按名称过滤)、--timeout(超时设置)、--recursive(递归子目录)一览,附带一行安装命令npm install mocha chai sinon --save-dev。 - 深度 Playbook:SKILL.md 点名的
reference/playbook.md含 10 个专题,覆盖生产级配置(.mocharc.yml、NYC/Istanbul 覆盖率、TypeScript 设置)、Chai+Sinon 组合测试、进阶 Sinon 模式(假时钟、nockHTTP 拦截、时序控制)、异步模式、Hooks 与测试组织、自定义 Reporter 与插件、基于 Supertest 的 Express/API 测试、CI/CD 集成(GitHub Actions)、10 项调试排错对照表与 13 条最佳实践清单。目录下还有一份 SKILL.md 正文未点名的reference/advanced-patterns.md,与 playbook 在异步模式、Sinon Mock、配置、自定义 Reporter、反模式等主题上有相当程度的重叠,属于同一批内容的另一种精简整理。两份参考文档合计约 17.0 KB,加上 SKILL.md 共约 20.0 KB。 - 纯参考文档形态:子目录仅含 SKILL.md 与两份 Markdown 参考文档,不含任何可执行脚本;SKILL.md 全文未出现 TestMu AI 云端服务相关内容,纯本地可用,不涉及任何第三方账号或凭据。
3. 适用场景
所属分类:工程效率与代码质量
已采用或计划采用 Mocha + Chai + Sinon 这套经典 JS 测试组合(而非 Jest/Vitest 内置断言与 Mock)的 JavaScript/TypeScript 开发者,想让 AI 编码助手按统一规范写出符合该组合习惯的单元测试、异步测试与 API 测试。不依赖 TestMu AI 云端服务,纯本地可用。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。SKILL.md 采用标准 Agent Skills 格式,仓库 README 给出配套的官方安装工具。
- Codex:❓ 未验证——仓库 README 列出的受支持助手为 “Claude Code, Copilot, Cursor, Gemini CLI”,未点名 Codex。
- OpenClaw:❓ 未验证——已抓取材料未提及。
- Hermes Agent:❓ 未验证——已抓取材料未提及。
5. 推荐理由
一份把 Mocha + Chai + Sinon 这套经典组合从基础断言、Sinon Sandbox Mock、三种异步写法到 Express/API 测试讲全的技能,附反模式对照表、10 项调试排错表与 13 条最佳实践清单帮助少走弯路,核心路径零付费依赖、子目录不含任何脚本,安全面干净。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | TestMu AI(原 LambdaTest)是该领域公认的一线测试云平台:累计融资 1.08 亿美元(8 轮,最近一轮 2024 年 Avataar Venture Partners 领投的 3800 万美元 C 轮),18,000+ 企业客户(含 Microsoft、OpenAI、Nvidia),Forbes 2026-01-12 有专文报道。合集仓库整体 352 stars 属整个合集,不代表本技能自身热度,GitHub 上未检索到与 mocha-skill 直接相关的 issue 或 PR |
| 可用性 | 8 | 核心功能零配置、零付费依赖,只需一条 npm install mocha chai sinon --save-dev 即可上手;文档完整含 10 个专题深度示例,覆盖生产配置到 CI 集成与调试排错;子目录最后提交约 2026-02-23(约 5.7 个月前),未见归档或功能性问题 |
| 安全性 | 9 | 子目录不含任何脚本或可执行文件,仅 SKILL.md 与两份 Markdown 参考文档;逐份扫描未见可疑指令或隐藏外发;全文未出现任何第三方账号、API Key 或凭据要求;License(MIT)明确 |
安全检查清单:① Shell 命令——无,不含 scripts/;② 联网外发——纯本地生成测试代码,无任何外发行为;③ 凭据——不涉及,本技能不依赖任何第三方账号或 API Key;④ 可疑指令——未发现;⑤ 作者信誉——TestMu AI,融资/客户量/媒体报道均可查证,良好;⑥ License——MIT,明确;⑦ 最近维护——约 2026-02-23,约 5.7 个月前,未见归档。
7. 跟同类 Skills 相比的优势
| 同类项目 | 定位 | 与本技能的差异 |
|---|---|---|
| jest-skill-lambdatest-agent-skills | 同池姊妹技能,面向 Jest 一体化方案 | Jest 内置断言与 Mock,开箱套件更集中;本技能面向“分离式”组合(断言用 Chai、Mock 用 Sinon),灵活度更高但需自行组装工具链,适合已有既定技术栈偏好的团队 |
| vitest-skill-lambdatest-agent-skills | 同池姊妹技能,面向 Vite 原生的 Vitest | Vitest 内置兼容 Jest 的 expect 断言与 vi Mock API,且有 In-Source Testing 等 Vite 独有能力;本技能不绑定构建工具,可用于任意 Node.js 项目,不要求项目已用 Vite |
| pytest-skill-lambdatest-agent-skills | 同池姊妹技能,面向 Python 生态 pytest | 服务 Python 项目,与本技能面向的 JS/TS 生态不重叠 |
| junit-5-skill-lambdatest-agent-skills | 同池姊妹技能,面向 Java 生态 JUnit 5 | 服务 Java 项目,与本技能面向的 JS/TS 生态不重叠 |
核心差异化在“经典可插拔组合”:Mocha 本身只负责测试运行与 BDD 风格的 describe/it 结构,断言与 Mock 交给 Chai、Sinon 独立负责,三者可按需替换(如换用其他断言库)——这对已有既定工具链偏好、或需要在旧项目中维持 Mocha 生态的团队,比内置一体化方案的 Jest/Vitest 更贴合。
8. 用户评价
该技能目前在第三方平台尚无具名用户评价;LambdaTest/agent-skills 仓库整体在 GitHub 上有 7 位贡献者的真实协作记录。
9. 其他补充
- 支持语言:JavaScript、TypeScript。
- Deep Patterns 表格里的 10 个专题均标注了对应涵盖内容,方便 Agent 按需定位到具体章节而非整份读入。
reference/advanced-patterns.md虽未被 SKILL.md 正文点名,但与 playbook 在异步模式、Sinon Mock、配置、反模式等主题上有相当重叠,实际使用中仍可能被 Agent 读取到,内容不会冲突。
10. 安装使用方式
方式一:官方 CLI(仓库推荐)
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill mocha-skill
方式二:手动复制(本技能不含任何脚本,直接复制目录即可)
git clone https://github.com/LambdaTest/agent-skills
cp -r agent-skills/mocha-skill ~/.claude/skills/
安装后注意事项:复制到位后无需重启、无需注册任何账号,Agent 会在识别到 “Mocha”、“Chai”、“sinon”、“describe/it (not Jest)” 等触发词时自动读取本技能内容。项目需自行 npm install mocha chai sinon --save-dev 安装三个库本身。
11. 注意事项
- 本技能面向“项目已采用或计划采用 Mocha + Chai + Sinon 组合”的场景;若项目使用 Jest 或 Vitest,应改用同池对应技能。
- 内容聚焦 Mocha/Chai/Sinon 语法与 API 本身,不涉及测试策略层面的设计取舍。
- 子目录最后提交约在 2026-02-23,约 5.7 个月前,暂未发现功能性问题,但关注长期维护节奏的团队可留意后续更新频率。