0%

Jest测试框架

FLOWERS

简述

  • Jest是JavaScript测试框架,专注于简洁明快。
  • 他适用但不局限于使用以下技术的项目:Babel, TypeScript, Node, React, Angular, Vue

创建项目

1
2
3
4
# -y 参数全部选项默认为yes
# yarn init --yes
# yarn init --yes=true
$ yarn init -y

安装依赖

1
$ yarn add jest babel-jest babel-core babel-preset-env regenerator-runtime --dev

创建.babelrc文件

1
$ touch .babelrc

配置.babelrc

1
2
3
{
"presets": ["env"]
}

配置package.json

1
2
3
"scripts": {
"test": "jest"
}

第一个jest测试

测试模块命名规范:被测试模块名.test.js

  1. 在根目录添加一个需要测试的模块src/functions.js
1
2
3
4
5
6
// src/functions.js
export default {
sum(a, b) {
return a + b
}
}
  1. 在根目录添加一个jest测试模块test/functions.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// test/functions.test.js
import functions from '../src/functions'

describe('functions module test', ()=>{
beforeAll(()=>{
// 预处理
})

test('sum(2 + 2)等于4', ()=>{
expect(functions.sum(2, 2).toBe(4))
})

afterAll(()=>{
// 后处理
})
})

常见的几个Jest断言

  1. .not
  2. .toEqual
  3. .toHaveLength
  4. .toThrow
  5. .toMatch

相关连接

Jest官网