Jest 是 Facebook 开发的一款开源的 JavaScript 测试运行器,既可以用于前端 UI 测试,也可以用于后端 Node.js 项目测试。本文将介绍 Jest 在 Node.js 工程中的使用教程,包括安装、配置、编写测试用例和运行测试脚本。
安装
首先,需要在项目中安装 Jest。可以通过 npm 进行安装:
npm install jest --save-dev
这将在项目的开发依赖中添加 Jest。
配置
在项目的根目录下,可以创建一个名为 jest.config.js
的配置文件来配置 Jest。下面是一个简单的配置文件示例:
module.exports = { testEnvironment: 'node', testMatch: ['<rootDir>/test/**/*.(test|spec).js'], coverageDirectory: '<rootDir>/coverage', collectCoverageFrom: ['src/**/*.js'], };
这个配置文件指定了 Jest 的测试环境为 Node.js,测试文件的命名匹配规则为 *.test.js
或 *.spec.js
,测试覆盖率报告存放在 coverage
目录中,所有 src
目录下的 JavaScript 文件都需要进行测试覆盖率检测。
其他配置选项可以参考 Jest 的官方文档。
编写测试用例
在项目的 test
目录下,可以创建测试用例文件。以一个比较简单的加法函数为例,可以编写如下的测试用例:
// javascriptcn.com 代码示例 // src/add.js function add(a, b) { return a + b; } module.exports = add; // test/add.test.js const add = require('../src/add.js'); describe('add function tests', () => { test('adds two numbers', () => { expect(add(1, 2)).toEqual(3); expect(add(2, 2)).toEqual(4); }); });
在上面的测试用例中,我们使用了 Jest 提供的 describe
和 test
函数来组织测试用例。expect
函数用来断言测试结果。在上面的例子中,我们对加法函数进行了两组测试,分别测试了两个数相加的结果是否正确。
运行测试脚本
在项目的根目录下,可以运行 Jest 的测试脚本来运行测试用例和检查测试覆盖率。可以通过在命令行中输入 npm test
或 npx jest
来运行测试脚本。如果配置文件中添加了 "test": "jest"
,也可以直接使用 npm run test
来运行测试脚本。
运行测试脚本后,输出的结果如下:
// javascriptcn.com 代码示例 PASS test/add.test.js add function tests ✓ adds two numbers (5ms) ------------------------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ------------------------|---------|----------|---------|---------|------------------- All files | 100 | 100 | 100 | 100 | src/add.js | 100 | 100 | 100 | 100 | ------------------------|---------|----------|---------|---------|-------------------
可以看到,此时测试用例已经成功通过,并且测试覆盖率为 100%。
总结
本文介绍了如何在 Node.js 工程中使用 Jest 进行测试。由于 Jest 可以进行测试用例编写、测试运行、测试覆盖率等多个方面的管理,因此可以极大地提高团队的测试效率和代码质量。希望本文对前端开发者们有一定的学习和指导意义。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/652d8f787d4982a6ebed50ea