Jest单元测试入门和实例(一)
上一篇 /
下一篇 2021-04-22 15:47:40
/ 个人分类:单元测试
1. 为什么选择Jest?
Jest 是
Facebook 出品的一个
测试框架,相对其他测试框架,其一大特点就是就是内置了常用的测试工具,比如自带断言、Mock 功能、测试覆盖率工具,实现了开箱即用。
2. 使用
1. 如何安装
Jest 可以通过 npm 或 yarn 进行安装。以 npm 为例,既可用 npm install -g jest 进行全局安装;也可以只局部安装、并在 package.json 中指定 test 脚本:
{ "scripts": { "test": "jest" } } |
est 的测试脚本名形如 *.test.js,不论 Jest 是全局运行还是通过 npm run test 运行,它都会执行当前目录下所有的*.test.js 或 *.spec.js 文件、完成测试。
2. 简单例子
先让我们在一个react工程目录中src下新建一个__tests__文件夹,在里面写我们的各种测试案例。
首先,创建一个sum.js文件:
function sum(a, b){ return a + b; }
function foo(){ return 'hello world' }
export { sum,foo }; |
然后在__tests__中,新建一个sum.test.js的文件:
import { sum,foo } from './sum.js';
describe('test testObject', () => { test('测试求和函数', () => { expect(sum(2, 2)).toBe(4); });
test('测试foo函数', () => { // 也可以用it expect(foo()).toBe('hell world'); }); }) |
- test() 函数表示一个测试用例
- describe() 函数表示一组用例
- expect() 函数返回一个期望值对象,该对象提供了大量的工具方法来做结果判定
- toBe() 函数表示断言方法
我们把 sum foo 置于 describe() 函数的处理回调函数中,就实现了对一组用例的测试。
在Jest官方文档中,it 是 test 的别名,二者可以通用。
最后运行 yarn test 或 npm run test,将打印出下面的消息,表示测试通过了。
PASS __test__/sum.test.js PASS __test__/foo.test.js √ 测试求和函数 (7ms) √ 测试foo函数 (1ms)
Test Suites: 2 passed, 2 total Tests: 2 passed, 2 total Snapshots: 0 total Time: 4.8s |
收藏
举报
TAG:
软件测试技术
单元测试