SuperAPI AI 工具集

jest

测试与质量

查看项目

更新于 10-15 21:49

技能介绍

用途:Jest 是注重简洁的 JavaScript 测试框架,适合 JavaScript/TypeScript 单元测试,适用于 React、Node.js 及遗留前端项目;也用于快照测试和代码覆盖率报告。主要能力:内置测试运行器,支持 Babel、TypeScript、Node、React、Angular、Vue 等;快照测试可冻结并断言大型渲染输出、GraphQL 响应或 JSON 配置;Mock 引擎可通过 jest.fn()、jest.mock()、jest.spyOn() 模拟函数、定时器和整个模块;支持假定时器(jest.useFakeTimers、jest.advanceTimersByTime)加速异步延迟;内置 Istanbul 覆盖率,无需外部插件。使用方式:安装与运行命令资料未提供;测试文件内使用 test/expect 断言,如 test("adds 1 + 2 to equal 3", () => { expect(sum(1,2)).toBe(3); })。常见模式是用 jest.mock("axios") 与 mockResolvedValueOnce 隔离外部依赖。最佳实践:在 jest.config.js 中开启 clearMocks: true,用 @swc/jest 加速 TypeScript 编译,用 test.each 做表驱动测试,保持快照精简;不要盲目用 -u 更新快照,不要过度 Mock 第三方库,避免悬空异步 Promise。故障排查:遇到“Cannot use import statement outside a module”需配置 ts-jest 或在 jest.config.js 设置 "transform": {};遇到“worker process has failed to exit gracefully”可用 --detectOpenHandles 并在 afterAll 关闭连接;快照不匹配时审查差异后用 jest -u 更新。限制:资料未提供平台、收费、价格及安装命令信息。