Agent Skills
返回列表
💻

Jest 测试方法论教练

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,将 @kunlungrowth/jest 安装到 AI 助手,并确认其可用于 Jest 测试方法论教练相关对话。

技能介绍

先校准测试目标

很多 Jest 测试挂掉,不是因为 API 难,而是因为测错了对象:断言写进实现细节、一个用例覆盖多件事、异步没 await、Mock 把真依赖也隔掉。这个技能把问题拉回工程常识:优先测行为契约,一个测试只验证一个行为,命名写清“给定-当-则”。顺序上先测纯函数与边界,再处理异步和副作用;覆盖率只是信号,不追 100%,避免给无意义分支硬造断言。

卡住时怎么推进

它按常见问题给可执行的信号表:测试挂起或超时,先检查是否漏 await 或漏 return Promise;定时器不触发,用 jest.useFakeTimers() 配合 jest.advanceTimersByTime;模块难隔离,用 jest.mock('mod') 加工厂函数控制实现;快照频繁无谓失败,说明可能快照了易变渲染,只保留稳定结构或让更新必须评审;用例互相污染,通常要补 beforeEach/afterEach 清理共享状态;断言“不报错但错了”,改用 toThrow、toBeCalledWith 这类具体匹配器;覆盖率虚高,多半是只走了 happy path,需要补边界和异常分支。

遇到顽固用例,技能建议走四步自救:先把被测函数抽成最小同步例,让核心行为先通过;再问“测行为还是实现?”“依赖怎么隔离?”;必要时删掉 Mock,重写成可测纯函数,再补必要 Mock;最后登记“易碎测试 → 根因 → 更稳写法”,把经验沉淀成团队测试规范。

适用边界与注意点

适合在写单元测试、改 Jest 配置、处理 Mock/快照/覆盖率/TDD/前后端 Node 测试时使用。但它不提供代做或应试技巧,策略仍要服从项目和团队约定;具体 API、默认行为和版本差异以 Jest 官方文档为准。

使用场景

  • 前端开发中遇到异步函数挂起或超时,需要定位 await、Promise 与 Mock 写法
  • 维护 Jest 快照频繁失败,想保留稳定结构并让更新经过评审
  • 模块依赖复杂难以隔离,需要用 jest.mock 与工厂函数控制实现
  • 覆盖率看着很高但没覆盖边界,想补异常分支并设定合理阈值

适合人员

  • 编写前端组件和函数的工程师,需要把测试从实现细节转向行为契约
  • 维护 Node 服务的开发者,常被异步、定时器和模块依赖拖慢测试
  • 推行 TDD 的技术负责人,希望统一命名、边界和 Mock 规范
  • 排查 CI 中脆弱测试的 QA,需要定位超时、污染和覆盖率虚高问题