搭建 vue2 單元測試環境(karma+mocha+webpack3)

從網上找了不少例子關於單元測試,都是如何新建項目的時候的添加單元測試,用vue-cli中怎麼添加,可是個人項目已經生成了,不能再一次從新初始化,這時如何添加單元測試,這裏面遇到了好多坑,寫在這裏記錄一下心得。css

一、用vue-cli生成一個新的項目,把單元測試須要的文件直接複製到你的項目中

vue init webpack vuetest

project catalog

文件下載地址 源代碼Github連接

二、安裝Karma+Mocha模塊,這個模塊依賴比較多,我在遇到了坑,解決問題半天發現缺乏了某個模塊,在這裏所有列出須要的模塊

npm i -D karma karma-webpack phantomjs-prebuilt karma-phantomjs-launcher karma-phantomjs-shim karma-chrome-launcher karma-sourcemap-loader mocha karma-mocha sinon chai sinon-chai karma-sinon-chai karma-spec-reporter karma-coverage istanbul-instrumenter-loader

三、修改package.json,在scripts裏添加啓動代碼(若是有unit就替換掉)

"unit": "karma start test/unit/karma.conf.js --single-run",

四、修改test目錄下的index.js文件,這裏是我遇到的最大的坑,解決了半天,老是提示.scss文件出錯,下面就是解決的辦法。

update index.js

const srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/)

改成:vue

const srcContext = require.context('../../src', true, /^\.\/(style$) /)

五、能夠複製vue-cli生成的項目文件來測試,以下圖,而且配置好路由,測試一下單元測試模塊是否安裝成功

HelloWord.vue

六、在項目中運行下面的命令,啓動單元測試

npm run unit

success log

同時在 test/unit/coverage 生成測試報告。以上就是一個簡單的 vue 單元測試實例。最後奉上源代碼

深刻研究參考文檔

Vue.js學習系列六——Vue單元測試Karma+Mocha學習筆記webpack

karma+webpack搭建vue單元測試環境git

karma+mocha+webpack3 搭建 vue2 單元測試環境github

做者相關Vue文章

基於Vue2.0實現後臺系統權限控制web

[vue2.0-基於elementui換膚[自定義主題]](https://juejin.im/post/5aea98...chrome

Vue國際化處理 vue-i18n 以及項目自動切換中英文vue-cli

打賞 衷心的表示感謝 打賞的都是好人一輩子平安。帥哥美女已經打賞還在等什麼。

打賞

相關文章
相關標籤/搜索