SuperAPI AI 工具集

jest

测试与质量

查看项目

更新于 10-15 23:33

技能介绍

用途:Jest 是 JS/TS 项目的标准测试运行器,内置 Mock、断言和覆盖率功能,适合编写和运行单元测试、集成测试与快照测试,也可用于 Mock 依赖和外部模块。不适用于 E2E 浏览器测试(应使用 Playwright 或 Cypress),也不用于 React 组件查询(应使用 react-testing-library)。

主要能力与用法:用 describe 分组、it 命名单个用例;用 beforeEach 为每个测试创建新实例,afterEach 中调用 jest.restoreAllMocks() 恢复 Mock。jest.mock 可替换整个模块,jest.spyOn 只监听单个方法并保留其余真实实现。异步测试应在 it 回调中使用 async/await,错误路径用 await expect(...).rejects.toThrow()。断言支持正向与 .not 反向匹配,以及 toThrow、rejects 等异常匹配。

限制与注意:ESM 场景需用 jest.unstable_mockModule,jest.mock 仅适用于 CommonJS;异步断言必须 await,否则可能静默通过;时间相关逻辑可用 jest.useFakeTimers(),并在 afterEach 调用 jest.useRealTimers() 防止计时器泄漏;快照差异需人工审查,用 --updateSnapshot 有意更新;模块在导入时缓存状态可用 jest.resetModules()。覆盖率阈值可在 jest.config.ts 中配置。

资料未提供安装命令、具体版本、收费与平台信息。