Jest基础使用指南手把手带你入门测试框架!

本课程分为两个主要部分:

  • Jest 快速入门
  • 测试用例的分组

Jest 快速入门

首先,我们需要初始化一个项目并编写要测试的工具函数。这可以通过运行 npm init -y 来完成,接着创建一个工具库文件,例如 tools.js,内容如下:

// 工具库
module.exports = {
    
    
  sum: function(a, b) {
    
    
    return a + b + 1; // 注意这里返回值比实际和多1
  },
  sub: function(a, b) {
    
    
    return a - b;
  },
  mul: function(a, b) {
    
    
    return a * b;
  },
  div: function(a, b) {
    
    
    return a / b;
  }
};

随后,我们需要安装 Jest,这是通过以下命令完成的:

npm install --save-dev jest

安装完成后,在项目根目录下创建一个测试文件,比如命名为 tools.test.js。Jest 提供了一些全局方法或对象(如 testexpectjest),可以直接在测试文件中使用,无需额外导入。以下是一个简单的测试用例示例:

const {
    
     sum } = require('./tools');

test('测试加法', () => {
    
    
  const result = sum(1, 2);
  expect(result).toBe(4); // 注意这里预期结果应该是4,因为sum函数返回值比实际和多1
});

对于其他工具函数,可以采用类似的方式进行测试:

const {
    
     sum, sub, mul, div } = require('./tools');

test('测试加法', () => {
    
    
  expect(sum(1, 2)).toBe(4);
});

test('测试减法', () => {
    
    
  expect(sub(10, 5)).toBe(5);
});

it('测试乘法', () => {
    
    
  expect(mul(2, 3)).toBe(6);
});

it('测试除法', () => {
    
    
  expect(div(10, 2)).toBe(5);
});

注意,ittest 的别名,两者可以互换使用。每个函数通常应该有其独立的测试用例,以便更准确地验证功能。

测试用例的分组

为了更好地组织测试用例,可以使用 describe 方法将相关的测试用例分组。这样不仅使代码结构更清晰,也便于维护。describe 同样是 Jest 提供的全局方法之一,用法如下:

describe('这是一组测试,用于验证加减法操作', () => {
    
    
  test('测试加法', () => {
    
    
    expect(sum(1, 2)).toBe(4);
  });

  test('测试减法', () => {
    
    
    expect(sub(10, 5)).toBe(5);
  });
});

describe('这是一组测试,用于验证乘除法操作', () => {
    
    
  it('测试乘法', () => {
    
    
    expect(mul(2, 3)).toBe(6);
  });

  it('测试除法', () => {
    
    
    expect(div(10, 2)).toBe(5);
  });
});

以上示例展示了如何使用 describe 将加减法与乘除法的测试用例分别归类。

总结

  • Jest 提供了诸如 testexpectdescribe 等全局方法,它们可以直接在测试文件中使用,无需额外导入。
  • 使用 testit 方法创建测试用例,其中 ittest 的别名。
  • 利用 describe 方法对测试用例进行逻辑分组,有助于保持测试文件的整洁和有序。

猜你喜欢

转载自blog.csdn.net/weixin_53961451/article/details/143465750