mocha安裝
- npm install mocha --save-dev
mocha簡介
- mocha是一個JavaScript的單元測試的框架,既可以運行在瀏覽器環境中,也可以運行在node.js環境中,只需要編寫測試用例,mocha就會將測試自動的運行,并且給出測試的結果
主要特點
- 既可以測試簡單的JavaScript函數,也可以測試異步代碼
- 既可以自動運行所有的測試,也可以只運行特定的測試
- 可以支持before、after、beforeEach和aftereach來編寫初始化代碼
測試用例?
不使用mocha的版本
sum.js
- 使用module.exports = function ,別的文件只需要require這個文件,就可以使用其內部的函數
- ...rest? ?不限制輸入參數的多少,但是輸入的參數會形成一個數組
module.exports = function (...rest){var sum = 0;for(let i of rest){sum += i;}return sum;
}
testSum.js?
- 使用node testSum.js執行
const assert = require('assert');
const sum = require('/sum.js')assert.strictEqual(sum(),0);
assert.strictEqual(sum(1,2),2);
assert.strictEqual(sum(1,2,3),2);
console.log("all asert over!");
?
使用mocha的版本
testSum.js
- 使用./node_modules/mocha/bin/mocha?testSum.js執行
const assert = require('assert');
const sum = require('./sum.js')describe('#sum.js',()=>{describe('#sum.js',()=>{it('sum() should return 0',()=>{assert.strictEqual(sum(),0);});it('sum(1,2) should return 3',()=>{assert.strictEqual(sum(1,2),3);});it('sum(1,2,3) should return 6',()=>{assert.strictEqual(sum(1,2,3),6);});});
});
- 如果測試存在錯誤
補充
- 單獨使用命令./node_modules/mocha/bin/mocha ?
- 只需要創建一個test文件夾,然后將測試需要的腳本放到測試文件夾下面
- 還需要改路徑喔,const sum = require('./sum.js')