为你的JavaScript代码写测试

下面会讲解如何使用 karama, jasmine 以及 webpack,来为我们的 ES6 代码编写测试。
(最后我写了一个可用的例子,请查看 ES2015-Starter-Kit

艰难的抉择

首先,我们要写测试,用什么写?自己写一个函数,还是使用某个测试框架?

看起来,后者可观一点。

然后,有哪些测试框架可以选择?选哪个?

于是,我们 google 之,找到 stackoverflow 的一个问题 JavaScript unit test tools for TDD

看了问题回答,很纠结,太多了不知道选择哪个!最后,我决定选择 Karma, JasmineMocha 这三者之一,根据 Star 数量以及维护团队。

图片描述

那么,Karma, Jasmine 以及 Mocha 这三者之间哪个好,有什么不同?

于是,我们不妨 google,找到了 What are the differences between mocha, chai, karma, jasmine, should.js, etc. testing frameworks? 这个问题。

从回答中我们可以知道:Karma 只是一个 test runner,他负责提供 environment。而 JasmineMocha 是编写测试脚本的框架。也就是说,我们可以选择 Karma + Jasmine或者 Karma + Mocha。我们不妨先选择前者~

综上所述,我们要使用 Karma + Jasmine 组合来为我们的 JavaScript 代码写测试

战斗的号角

接下来,我们根据文档(karma - Installation, karma - ConfigurationJasmine - introduction),很容易就能搞起来。

在这里我想说的是:当编写多个测试脚本的时候,你也许可以使用 beforeEachafterEach。他们分别会在每个测试(spec)的之前和之后执行一次。

副本

最后还有一个问题是如何结合 Webpack 来为我们的ES6代码编写测试。

我不得不承认,这是一个很不错的问题。然而,我也通过google找到了答案。

详细教程请看 VueJSTesting 文档。

战斗的荣耀

你可以为你的仓库弄一个亮晶晶的 travis ci status image

详细设置请查看 travis docs以及这篇教程 Testing JavaScript with Jasmine, Travis, and Karma

最后,如果还是不懂的话,可以查看我写的一个例子:ES2015-Starter-Kit

Resources

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值