美文网首页IT圈程序员
Mocha测试基本使用

Mocha测试基本使用

作者: 天上月丶 | 来源:发表于2017-06-13 16:02 被阅读1948次

学习mocha初始是根据阮一峰老师的测试框架 Mocha 实例教程进行学习的,感兴趣的同学可以参考该教程进行系统学习。
这里只总结在我学习过程中容易被忽略的地方。
首先,我们的电脑上存在正确的node环境。
先全局安装mocha环境npm install --g mocha
我们先从一个基础的加法模块开始了解mocha基本用法,测试例为add.js,具体代码如下

function add(x, y) {
  return x + y;
}

module.exports = add;

测试这个加法模块的正确性,需编写测试脚本,add.test.js,如下所示

var add = require('./add.js');
var expect = require('chai').expect;

describe('加法函数的测试', function() {
  it('1 加 1 应该等于 2', function() {
    expect(add(1, 1)).to.be.equal(2);
  });
});

测试脚本中应包括一个或多个 describe块,每个describe块应该包括一个或多个it块。
describe块称为“测试套件”,表示一组相关的测试,他是一个函数,第一个参数是测试套件的名称(“加法函数的测试”),第二个参数是一个实际执行的函数。
it块称为“测试用例”,表示一个单独的测试,是测试的最小单位。它也是一个函数,第一个参数是测试用例的名称(“1加1应该等于2”),第二个参数是一个实际执行的函数。
执行该测试脚本时使用mocha add.test.js即可。add.test.js为你自己的测试脚本。

  • 执行所有测试脚本
    一般来说,我们的测试脚本都会放在test下,所以mocha命令会执行test文件夹下的测试脚本,但是若test下有子文件夹,子文件夹下存在测试脚本的话,只使用mocha就不能全部执行了。这时需要使用mocha --recursive来执行test文件夹下所有测试脚本。

  • 执行某一类测试脚本
    mocha test/**/*.js该命令即是执行test下所有文件夹下的.js文件。

  • 帮助提示
    mocha --h或者mocha --help可以看到所有的参数提示,在使用时可参考使用。

  • 切换显示方法
    默认的,我们测试结果显示方式如下图所示:

默认显示

是因为默认显示方式为spec格式,使用命令mocha --recursive --reporter tap --growl可以切换显示方式为tap,同样,你可以将tap换位spec验证显示方式。

切换显示
  • 配置文件
    命令mocha --recursive --reporter tap --growl使用了三个参数来设置显示方式,我们可以在test文件夹下建一个名为mocha.opts的文件,将这三个参数写入,运行mocha,则与上面命令方式显示一致。
    mocha.opts内容
recursive
reporter tap 
growl
  • 超时设置
    若运行时间过长,则可以使用-t 重置超时参数。命令为mocha -t 5000 timeout.text.js
    -s或-slow可设置超过该时间执行的部分高亮显示。命令为mocha -t 5000 -s 1000 timeout.test.js

  • 生成报表及网页显示
    报表展示:mocha --recursive -R markdown > spec.md
    网页展示:mocha --recursive -R doc >spec.html

相关文章

网友评论

    本文标题:Mocha测试基本使用

    本文链接:https://www.haomeiwen.com/subject/dkwdqxtx.html