摘要:前言配合進行單元測試,存在官方版本,版本雖然陳舊,但是功能實現(xiàn)沒有問題。單元測試中配置文件與實際存在差異,所以單元測試保證模塊的可靠性,具體生產(chǎn)環(huán)境下注意模塊可正常加載就好。。為單元測試而安裝的模塊。
如有排版效果混亂,請移步https://www.zybuluo.com/bornkiller/note/24759。
前言karma配合requirejs進行單元測試,存在官方版本http://karma-runner.github.io/0.8/plus/RequireJS.html,版本雖然陳舊,但是功能實現(xiàn)沒有問題。
單元測試中配置文件test-main.js與實際main.js存在差異,所以單元測試保證模塊的可靠性,具體生產(chǎn)環(huán)境下注意模塊可正常加載就好。。
下面代碼僅為局部需特別注意代碼,其它字段省略。
package.json{ "dependencies": { }, "devDependencies": { "karma": "^0.12.19", "karma-chrome-launcher": "^0.1.4", "karma-cli": "^0.0.4", "karma-jasmine": "^0.1.5", "karma-requirejs": "^0.2.2", "requirejs": "^2.1.14" }, }
為單元測試而安裝的node模塊。
karma.config推薦在實際使用時,用NPM在項目中再安裝一次,更容易理解一些。
// Karma configuration // Generated on Tue Jul 29 2014 10:24:37 GMT+0800 (中國標(biāo)準(zhǔn)時間) module.exports = function(config) { config.set({ // base path that will be used to resolve all patterns (eg. files, exclude) basePath: "", // frameworks to use // available frameworks: https://npmjs.org/browse/keyword/karma-adapter frameworks: ["jasmine", "requirejs"], // list of files / patterns to load in the browser files: [ {pattern: "lib/**/*.js", included: false}, {pattern: "service/**/*.js", included: false}, {pattern: "test/**/*spec.js", included: false}, "test-main.js" ], }); };
basePath使用默認(rèn)值即可。
framework如上填寫后,頁面會自動引入斷言庫和加載庫,不在需要手動引入。
需要注意的是files字段,included設(shè)置為false,表示不會直接通過