mocha單元測試簡易教程


mocha單元測試簡易教程

寫在前面

其實mocha單元測試的教程網上有很多,也都很簡單易懂,但是每個人對同一份的教程也會產生不同的理解,像我這種大概就是走遍了所有彎路才到達終點的人,想通過給大家分享一下自己的實踐過程,希望有人能從我這得到收獲

教程參考

安裝

以下安裝文件大小都在10-20M之間,您可以快速的完成安裝過程

  • Node.js
    因為mocha安裝依賴Node,所以在下載mocha前先在官網下載Node.js,Node下載安裝幾乎是一路傻瓜next,如想確保安裝的正確性,請參考nodejs詳細安裝步驟
  • mocha
    mocha安裝請到測試框架 Mocha 實例教程,這里面提供了幾個demo,可以確保您在一步步測試樣例中熟悉mocha單元測試步驟

單元測試

  • 在單元測試前我們需要:一個js文件和一個test.js文件。

js文件中存放您需要測試的函數,test.js存放您對js文件的測試。這里使用上面講到的demo中的一個做樣例講解。
假設要實現如下下加法運算,您可以將函數存在add.js中

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

進行單元測試前需在函數尾部加module.exports = add;將需要測試的函數暴露出去,前面的"use strict";是標准設置

"use strict";
function add(x, y) {
  return x + y;
}
module.exports = add;

然后創建add.test.js文件,這個文件可以跟js文件放在一個目錄下,也可以在js文件所在目錄再創建一個test文件夾,將add.test.js存放在test文件夾中。兩種形式最后都是在js所在目錄下運行mocha。

以下為add.test.js中的簡易測試內容,其中describe的第一個參數是對測試的描述,it中的第一個參數是對測試結果的描述

/*以下為固定格式,其中require中內容及變量按照您要測試的函數命名*/
"use strict";
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);
  });
});
  • 進行單元測試
    打開cmd窗口,進入add.js所在目錄
    輸入
npm install mocha -g
npm install --save-dev chai

第二條尤其注意,您可能在前面已經安裝了全局chai如下,但是要進行mocha單元測試需要在js所在目錄下安裝局部chai,否則會報錯Error: Cannot find module 'chai'

npm install chai -g

接下來就是還有一個注意點,如果您將js和test.js文件放在一個目錄下,test.js的require書寫如下

var add = require('./add.js');//根據函數名命名參數

就在cmd輸入mocha add.test.js如下進行單元測試

如果是將test.js文件放入test文件夾中,test.js的require書寫如下,區別在於add.js前面"."的個數

var add = require('../add.js');//根據函數名命名參數

cmd直接輸入mocha運行如下

單元測試完成


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM