Karma+mocha+es6+webpack配置自動(dòng)化前端環(huán)境

安裝依賴

1 全局安裝 karma-cli

2 安裝webpack 2/3

3 安裝karma,karma-mocha,karma-chai,karma-chrome-launcher,mocha,chai

4 安裝 karma-webpack, babel-core,babel-preset-dev,babel-loader,babel-plugin-istanbul

配置

karma init 初始化配置文件

根據(jù)配置文件做相應(yīng)修改

主要是files,plugins,webpack,exclude

由于是es6模塊引入,只要添加測(cè)試文件入口即可。

Plugins即上述的karma-x插件。

Webpack配置對(duì)象的子集,注意不用入口和輸出配置。可在babel-loader的options配置preset:["dev"],plugins:["istanbul"].

Exclude 掉node_modules里的j s 。

使用karma-coverage

Preprocessor 添加待測(cè)試文件和測(cè)試文件,預(yù)處理器都為webpack 。

Reporter處添加coverage 。

可配置其輸出位置。

使用karma-mocha-report 替換progress報(bào)告。

可配置其格式。

注意webpack只需要配置rules 不需要入口和出口,入口已經(jīng)有karma的files控制了。

開啟

karma start或者寫入npm test中。

karma.config.js文件加入chai,則不用導(dǎo)入chai和expect

可能會(huì)遇到的問(wèn)題

安裝依賴問(wèn)題

1karma-webpack 前先安裝webpack 版本2,3不要4。

2各種module找不到,手動(dòng)裝完一個(gè)又一個(gè)。解決方案。手動(dòng)刪除node_modules,清空npm cache:npm cache clean --force,重裝。還不行,就重新開啟一個(gè)不同名的項(xiàng)目文件夾,完全干凈的項(xiàng)目環(huán)境,否則系統(tǒng)緩存很強(qiáng)。

加入karma-coverage 可能會(huì)失效,顯示各種0,檢查webpack配置里添加istanbul插件。preprocessor里要加入如src里的待測(cè)試文件。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容