使用 mocha 和 babel 来测试你的 es6 代码

前段时间给一个项目提 PR,帮助该项目实现 es6 module 的支持,所以要想办法给 es6 代码写测试用例。顺便研究了一下这块东西,感觉还挺简单的,这里记录一下吧。

原料

  1. mocha
  2. babel-register
  3. babel-preset-es2015

步骤

0x00 安装必要的依赖

1
2
3
$ yarn add mocha -D
$ yarn add babel-register -D
$ yarn add babel-preset-es2015 -D

0x01 写配置文件

为 package.json 添加 script

1
2
3
4
5
...
"scripts": {
"test": "mocha --compilers js:babel-register"
},
...

创建 .babelrc 文件并写入以下内容

1
2
3
{
"presets": [ "es2015" ]
}

0x02 写测试用例

新建 test 目录,mocha 会默认执行 test 目录下的测试脚本,在 test 目录下新建 a.js 和 b.js 文件

a.js

1
2
3
4
5
6
class A {
constructor () {
console.log('import A succeed !')
}
}
export {A}

b.js

1
2
3
4
5
6
7
import {A} from 'a.js'

class B {
constructor () {
let a = new A()
}
}

0x03 执行测试用例

1
$ npm test

完成

参见

测试框架 Mocha 实例教程