Getting Started

我们先以一个简单的加法示例开始,完整的源代码在 01.getting-started 中。

1. 新建项目

新建一个文件夹,在本例中,我们命名为 01.getting-started

执行 npm init ,按提示输入,完成后会自动生成一个 package.josn 文件。

安装相应的 npm 包:

npm install mocha chai --save-dev

2. 新建js模块

新建 add.js 文件,并且实现一个简单的加法功能:

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

module.exports = add;

3. 新建测试文件

新建 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);
  });
});

通常,测试脚本与所要测试的源码脚本同名,但是后缀名为.test.js(表示测试)或者.spec.js(表示规格)。

在上面的测试脚本中,有一句断言:

expect(add(1, 1)).to.be.equal(2);

所谓"断言",就是判断源码的实际执行结果与预期结果是否一致,如果不一致就抛出一个错误。上面这句断言的意思是,调用 add(1, 1),结果应该等于 2

所有的测试用例(it 块)都应该含有一句或多句的断言。它是编写测试用例的关键。断言功能由断言库来实现,Mocha 本身不带断言库,所以必须先引入断言库。

var expect = require('chai').expect;

断言库有很多种,Mocha并不限制使用哪一种。上面代码引入的断言库是chai,并且指定使用它的expect断言风格。

关于断言库和 chai,后续还会有介绍。

4. 运行测试命令

进入到 01.getting-started 目录下,执行以下命令:

mocha add.test.js

运行结果如下,可以看到测试脚本同构了测试,一共只有 1 个测试用例,耗时是 8 毫秒。

mocha 命令后面紧跟测试脚本的路径和文件名,可以指定多个测试脚本。例如: mocha file1 file2 file3

results matching ""

    No results matching ""