Jest 是一个广泛使用的 JavaScript 测试框架,可以帮助开发者快速编写和运行测试用例。

安装 Jest

首先,确保你的项目中已经安装了 Node.js 和 npm。然后,可以通过以下命令安装 Jest:

npm install --save-dev jest

基本用法

1. 编写测试用例

在 Jest 中,测试用例通常以 .test.js.spec.js 为后缀。以下是一个简单的测试用例示例:

// sum.test.js
const sum = require('./sum');

test('adds 1 + 2 to equal 3', () => {
  expect(sum(1, 2)).toBe(3);
});

2. 运行测试

在命令行中,使用以下命令运行测试:

npx jest

3. 断言

Jest 提供了一系列断言方法,用于检查测试用例是否通过。以下是一些常用的断言:

  • toBe(expected):检查值是否严格等于预期值。
  • toBeNull():检查值是否为 null。
  • toBeUndefined():检查值是否为 undefined。
  • toBeTruthy():检查值是否为真值。
  • toBeFalsy():检查值是否为假值。
  • toEqual(expected):检查两个值是否深度相等。

高级用法

1. Mock 函数

Mock 函数可以帮助你模拟外部依赖,以便在测试时更容易控制测试结果。

jest.mock('./external-dependency', () => ({
  externalMethod: jest.fn().mockReturnValue('mocked value')
}));

// 使用 mock 的函数
const result = externalDependency.externalMethod();

2. 模拟模块

Jest 允许你模拟整个模块。

jest.mock('module-to-mock', () => ({
  __esModule: true,
  default: jest.fn(() => 'mocked default export')
}));

// 使用模拟的模块
const module = require('module-to-mock');
const result = module.default();

扩展阅读

希望这个指南能帮助你更好地了解 Jest。如果你有其他问题,欢迎在社区论坛提问。