karma 基礎配置

1. karma.conf.js配置文件

module.exports = function(config){
    config.set({
        //基礎路徑:表示karma從哪個位置開始找文件
        basePath:''//測試環境
        browsers:true,

        //框架 jasmine mocha都可以
        framework:['jasmine'],

        //測試的入口文件
        files:['./index.js'],

        //排除文件,可以是正則
        exclude:[],

        //對指定文件的預處理
        preprocessors:{
            './index.js': ['webpack', 'sourcemap'],
        },

        //結果報表
        reporters:[''],

        //colors 報表中是否有顏色區分
        colors:true,

        //port 服務器端口
        port:8080,

        // 輸出的日誌級別
        // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
           logLevel: config.LOG_INFO,

        // 文件變化是否自動刷新
           autoWatch: true,

        //是否依附瀏覽器運行
        singleRun:false,

        //併發數,同時支持多少個瀏覽器運行
        concurrency:Infinity,

        //webpack配置
        webpack:webpackConfig,

        //代碼覆蓋率配置節點
        coverageReporter:{
            dir:'./coverage',
            reporters:[
                {type:'lcov',subdir:'.'},
                {type:'text-summary'}
            ]
        }


    })
}

2.測試代碼 *.spec.js

import {init} from '../../src/ma'
import data from '../mocks/demo'

describe('demo.spec', function(){
    it('body',() => {
        init();
        let button = document.querySelector('.btn');
        button.textContent = data.btnName;
        expect(button.textContent).toEqual(data.btnName);
    })
});

參考資料:

  1. jasmine
  2. mocha
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章