基於nodejs的前端測試框架很多,最后選擇了mocha。mocha你或許沒聽過,但是它的開發着—TJ,做前端的同學肯定聽過。 廢話少說,上正菜
- 因為mocha是基於nodejs,首選我們要安裝nodejs環境,不會的同學請自行百度、google(看到這個,是不是心里有股沖動,油然而生)
- 安裝mocha,其實就是一個nodejs模塊。多了一個"-g"參數,為了使用方面將mocha安裝導系統環境變量中,隨便在哪個目錄都能使用。
npm install -g mocha
- 新建一個測試目錄mocha,存放這個demo需要的文件
- 安裝單元測試的斷言模塊,選TJ的should斷言模塊。這個模塊就不要安裝到系統環境變量了,會在當前目錄下生產一個node_modules的目錄,存放當前工程使用的所有模塊
npm install should
- 新建單元測試用例文件。在當前目錄下新加一個test目錄(mocha默認會執行test目錄下所有的測試用例),再新建一個test.js的文件,這個文件存放單元測試用例代碼
1 var assert = require("should"); 2 var fs = require("fs"); 3 4 describe('同步測試', function() { 5 it('數組測試', function() { 6 assert.equal(-1, [1, 2, 3].indexOf(5)); 7 assert.equal(-1, [1, 2, 3].indexOf(0)); 8 }) 9 10 it('字符串合法性測試', function() { 11 assert.equal("123", "123"); 12 }) 13 }) 14 15 16 describe('異步測試', function() { 17 it('異步讀取文件', function(done) { 18 // index.js請自行添加,測試用例會讀取里面的內容並比較 19 fs.readFile("index.js", "utf8", function(err, data){ 20 data.should.eql("test"); 21 done(); 22 }) 23 }) 24 })
- 現在准備工作都完了,我們跑一下自己的測試用例,在命令行輸入mocha。輸入結果如下,3個test case,全部通過
7. 如果修改test case,改成有錯誤的。test case的通過情況和出錯的點,都非常清晰的顯示出來
總結:
篇幅優先,只把一些主要操縱流程展示處理,高級特性和一些個性化配置,請參考下面的資料。
后面會繼續寫綜合性的使用分享
參考資料
- mocha的主頁:http://mochajs.org/
- should:https://github.com/shouldjs/should.js