Javascript单元测试工具— Jest 初步应用
今天简单介绍下Jest 。Jest 是Facebook的一个专门进行Javascript单元测试的工具,之前仅限他们的前端工程师在公司内部使用,后来开源出来,它是在Jasmine测试框架上演变开发而来,使用了我们熟知的expect(value).toBe(other) 这种断言格式。
Jest是一种很容易使用的测试工具,下面我们分几个小步骤来实际操作一下吧。
首先我们需要新建一个js文件名为sum,如下:
这里有一个非常简单的javascript函数,他有2个参数,当然实际情况不可能这么简单,纯属为了学习使用 jest。现在呢,我们想给他进行一个单元测试,How to do it !
我们只需要四个步骤:
1.根据官方的要求我们需要创建一个名为"__tests__"的文件夹。 然后我们在这个文件夹下在创建一个名为"sum-test.js"的文件,代码如下:
2.我们需要在命令行下敲一行代码(我的是linux系统): npm install jest-cli --save-dev
3.创建package.json文件(这个文件与__tests__文件夹并列)。
其中package.json的代码:
{
"scripts": {
"test": "jest"
}
}
4.我们执行命令 "npm test" 或 "jest"。
到现在我们已经成功的对我们sum.js 进行了单元测试,只要是显示绿色的就表示通过了。你可能会问,没通过会显示什么?很好的问题,我们特意改错来跑一下就可以了。我们在上面sum-test.js程序中修改 toBe(3) 为 toBe(4) 试一下:
矣,报出了红色的错误,上面还提示我们,我们运行程序所获得的值Expected是3,而我们要的值toBe是4,显然不正确,所以提示错误信息。还告诉我们出错位置在sum-test.js程序的第8行22列,这样我们就可以快速去查找修复了。是不是很智能很好玩呢!
当然上面只是简单的介绍使用,对于入门来讲还是很重要的,特此分享给大家,大家有几乎可以尝试一下下!