Попытка сгенерировать отчет о покрытии lcov с karma-istanbul
через vue-cli-service
(новый 3.0). Почти он работает, к сожалению, не может заставить .vue
SFC работать, по неизвестной причине он передается в Стамбул как .vue.js
, и я не могу понять, почему.
Использование через конфигурацию babel:
module.exports = {
presets: ['@vue/app'],
env: {
test: {
plugins: ['istanbul'],
},
},
};
Кроме того, мы используем vue-cli-plugin-unit-karma в качестве бегуна
Karma conf:
{
files: [
'./tests/unit/specs/**/*.js',
'./src/**/*.(vue|js)',
'!./src/main.js',
'!./src/embed.js',
],
logLevel: 'ERROR',
reporters: ['spec', 'coverage'],
autoWatch: undefined,
singleRun: true,
browsers: ['ChromeHeadless'],
frameworks: ['mocha', 'chai', 'sinon-chai'],
preprocessors: {
'./tests/unit/specs/**/*.js': ['webpack', 'sourcemap'],
'./src/**/*.(vue|js)': ['webpack', 'sourcemap'],
'!./src/main.js': ['webpack', 'sourcemap'],
'!./src/embed.js': ['webpack', 'sourcemap'],
},
webpack: {},
webpackMiddleware: { logLevel: 'silent' },
coverageReporter: {
dir: './tests/unit/coverage',
reporters: [[Object], [Object]],
},
};