Photo on jestjs.io
前言
在前几篇的文章内容中,介绍过两个自动化测试框架的主题
分别是 Robot Framework 与 Nightwatch.js
而这个礼拜所要介绍的最后一个自动化测试框架
是与 Nightwath 一样使用 JavaScript 程式语言撰写测试脚本的 Jest
有兴趣的大哥大姐,可以点下方连结参考参考~
鼠年全马铁人挑战 WEEK 13:Robot Framework (上)
鼠年全马铁人挑战 WEEK 14:Robot Framework (下)
鼠年全马铁人挑战 WEEK 15:Nightwatch.js (上)
鼠年全马铁人挑战 WEEK 16:Nightwatch.js (下)
介绍 Jest
Jest 适用于各种 JavaScript 框架
包括 Babel、TypeScript、Node、React、Angular、Vue 等。
Jest 在使用上非常的快速简单好上手,不用过多的设定操作即可使用。
透过指令还可以在测试执行完,清楚显示测试的成功覆盖率。
安装 Jest
安装 JavaScript 框架
小弟在这边就一样选择 Node 来做 Jest 的 JavaScript 框架。
如果不确定是否已经安装可以透过查询版本来确认$ node -v
和 $ npm -v
如果尚未安装 Node.js 和 npm 可点选下面连结安装
官方载点 >>> nodejs.org
安装 Jest
为了方便使用小弟就先建立一个 jest 的专案资料夹$ mkdir jest && cd jest
接着透过 npm 来新增一个 package.json 的初始文件$ npm init -y
确认 package.json 建立成功后
就可以下指令来安装 jest 了$ npm install --save-dev jest
此时在专案底下会增加 node_modules 和 package-lock.json 的资料夹与档案
执行测试
为了确定 Jest 可以正常运作
小弟就先写一个简单的测试来试跑看看
首先,创建一个 sum.js 的 module 文件
module.exports = function (a, b) { return a + b;}
然后,创建一个名为 sum.test.js 的测试文件。
const sum = require('./sum');test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3);});
接着,将执行指令添加到 package.json 文件中
{ "scripts": { "test": "jest" }}
最后,执行 $ npm run test
Jest将显示以下消息
PASS ./sum.test.js✓ adds 1 + 2 to equal 3 (5ms)
结尾
这週的内容简单的设定一下 Jest。
先做好简单的初始作业,并执行简单的测试。
如果有疑问或是有错误,还请各位大哥大姐提点。
小弟将继续往下週迈进。 ─=≡Σ((( つ•̀ω•́)つ
参考文件:
Jest · ? Delightful JavaScript Testing