Mocha 运行在nodejs和浏览器下的JavaScript的单元测试框架。
- 用于写测试用例的宏,属性或者函数
- 断定库, 用于测试是否可以通过
- 辅助库,如hook库(测试前后调用某些函数或者方法),异常检查(某些函数在某些参数的情况下抛出异常), 输入组合(支持多排列的参数输入组合)等。
- 支持IDE的集成
Hooks(钩子)
实际上这个在写unit test 是很常见的功能,就是在执行测试用例,测试用例集合前或者后需要某个回调函数(钩子)。Mocha提供了before(),after(),beforeEach() 和afterEach(),示例代码如下:
before(function() {
// runs before all tests in this block
// 在执行所有的测试用例前 函数会被调用一次
});
after(function() {
// runs after all tests in this block
// 在执行完所有的测试用例后 函数会被调用一次
});
beforeEach(function() {
// runs before each test in this block
// 在执行每个测试用例前 函数会被调用一次
});
afterEach(function() {
// runs after each test in this block
// 在执行每个测试用例后 函数会被调用一次
});