0

Я только что узнал о новом плагине babel под названием babel-plugin-coverage. Я пробовал, но безуспешно.Как добавить отчет о покрытии к карме с новым babel-plugin -__ coverage__

Проблема заключается в том, что данные о покрытии не записываются на диск (даже каталог не создается).

Итак, мой первый вопрос: Учитывая следующий Бабель конфигурацию, которая размещена внутри .babelrc

{ 
    "env": { 
     "test": { 
      "plugins": [ "__coverage__" ] 
     } 
    } 
} 

Как таргетировать/определить эту test среду в моей karma.config?

Это справедливо и для записи в верхней части karma.conf.js следующего:

require("babel-plugin-__coverage__"); 

Теперь, вот фрагмент из моего karma.conf.js

require("babel-plugin-__coverage__"); 
module.exports = function (config) { 
    config.set({ 
     basePath: '../app/', 
     frameworks: ['browserify', 'jasmine-jquery', 'jasmine'], 
     files: [ .... ], 
     preprocessors: { 
      .... 
      '../test/unit/app.js': ['browserify'], 
      'components/common/module.js': ['browserify'], 
      'components/services/module.js': ['browserify'], 
      '../test/unit/components/**/*.spec.js': ['browserify'], 
      'components/**/*.spec.js': ['browserify'], 
      'components/**/*.fixtures.js': ['browserify'] 
     }, 
     browserify : { 
      transform : ['babelify', 'stringify'], 
      debug: true, 
      paths: [ ... ] 
     }, 
     reporters: [ 
      'progress', 
      'coverage' 
     ], 

     coverageReporter: { 
      type: 'html', 
      dir: '../target/coverage' 
     }, 
     ... 

Любых помощь будет оценена?

ответ

1

Чтобы настроить среду для тестирования добавить

process.env.NODE_ENV = 'test'; 

к началу karma.conf.js

вам не нужен require("babel-plugin-__coverage__") вызов

+0

Это, кажется, работает. Теперь плагин, похоже, что-то делает с результатом, что я получаю много ошибок пакета: 'TypeError: плагин« __coverage__ »не экспортировал экземпляр Plugin во время анализа файла: .....' –