mocha 是一套 JavaSciprt 的测试框架,它可以帮助我们组织,创建还有运行测试。测试可以放在项目的 test 目录的下面,执行测试的时候 mocha 会自动到这个目录下面查找所有的测试文件,然后运行里面定义好的测试 ..
在这个 test 目录的下面新建一个文件,文件的名字可以是你想测试的东西的名字 .. 你也可以在文件的名字的前面或者后面加上 test,表示这是一个测试 .. 或者可以加上一个 spec 后缀 ...
这里我直接使用想要测试的类的名字作为这个测试文件的名字 .. 比如 ninghao-demo.js ..
测试可以使用 describe 分组去管理 .. describe 里面包含的就是一组测试 .. 使用一下 describe .. 第一个参数可以描述一下这组测试 .. 比如我要测试 NinghaoDemo 这个类 .. 第二个参数是一个函数 .. 它里面可以包含具体的测试,或者可以嵌套测试群组 ..
再嵌套一个 describe .. 同样描述一下这组测试 .. 比如我要测试的是 NinghaoDemo 这个类下面的 方法 1
我们可以在这个测试群组里使用 context 去划分这个方法在不同情境下的一些行为 .. context 是 describe 的别名,它们其实是一个东西 .. 只不过使用 context 可能会让测试结构更清楚一些 ...
比如情境 1 ... 每个测试使用的是 it 这个方法 ... 第一个参数可以描述一下这个测试 .. 在第二个函数参数里可以添加测试 ... 比如使用一些断言库说明一下你想要的行为 ..
再添加一个测试 ... 现在这个测试文件里,一共有两个测试,测试 1 还有 测试 2 ...
回到终端 ... 运行测试之前先确定你所在的位置是在项目的根目录的下面 .. 我在全局范围安装了 mocha ,所以可以直接执行一下 mocha 这个命令 ..
你会看到测试的结果 .. 另外我在项目本地也安装了 mocha ,而且配置了 package.json,让 test 命令使用本地版本的 mocha ... 可以执行一下 npm test ...
会显示同样的结果 .. NinghaoDemo 这个测试群组下面包含一个方法 1 群组,它的下面又包含了一个情境 1,这个方法在情境1的下面有两个测试,测试 1 还有 测试 2 ...
因为我们还没有添加 assertion ,就是断言 .. 所以测试的结果就是这两个空白的测试都被通过了 ...