Я использую istanbul-instrumenter-loader, чтобы попытаться создать отчеты о покрытии кода для мой нетранспилированный код es6, и хотя все работает нормально, проблемы, о которых сообщается в сгенерированном выводе HTML, похоже, не совпадают с фактическим источником.
Например:
(на случай, если изображение удалено) Объявление const
содержит 3 "если оператор не покрыт" после него, даже если после этой строки нет такого оператора или какого-либо кода. Иногда «оператор не покрыт» помечен в середине строки, или в объявлении объекта, или между несколькими операторами и т. д. и т. д.
Вот мой конфигурационный файл Karma:
module.exports = function(config) {
config.set({
basePath: '../../',
frameworks: [ 'qunit' ],
files: [
'test/index.js',
// Session tickets
{ pattern: 'test/tickets/*.json', watched: true, included: false, served: true }
],
preprocessors: {
'test/index.js': 'webpack'
},
webpack: {
module: {
rules: [{
test: /\.js$/,
exclude: /node_modules/,
loaders: ['istanbul-instrumenter-loader', 'babel-loader']
},
{
test: /\.vue$/,
loaders: ['vue-loader']
},
{
test: /\.png$/,
loaders: ['url-loader']
}]
}
},
reporters: [ 'coverage-istanbul', 'progress' ],
coverageIstanbulReporter: {
type: 'html',
dir: './coverage'
fixWebpackSourcePaths: true
},
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: [ 'Chrome' ],
browserNoActivityTimeout: 30000,
singleRun: true,
concurrency: Infinity,
client: {
captureConsole: true
},
browserConsoleLogOptions: {
terminal: true,
level: ''
}
})
};
else
не покрыты, аelse
нет для покрытия. Вы решили это? - person Harry Joy   schedule 16.06.2017