Отчет по охвату кода Стамбула - Мокко
Действительно ли Стамбул пытается получить покрытие для файлов, которые я пытаюсь проверить, или файлов, которые были написаны для проверки. Пример применения моего узла У меня есть тест, написанный с использованием Mocha, и мои тесты и реальные файлы находятся в той же папке, что и ниже.
..Server/Controllers/ - здесь у меня есть оба контроллера cntrlOne.js, которые я хочу протестировать, а также файлы cntrlOne.intspec.js вместе.
Моя цель - узнать, сколько кода покрывается моими тестами.
Когда я запускаю следующую задачу gulp, я вижу, что отчет о покрытии записывается в html-файл, но все, что я вижу, это отчет о покрытии для файлов.intspec.js, но не фактические файлы. Я действительно не мог понять, предназначен ли отчет о покрытии для файлов intspec и для тех файлов, которые проверяются этими файлами intspec. Отчет показывает 100% охват, что определенно не соответствует действительности.
gulp.task('coverage',['api-tests'],function(cb){
gulp.src(['./server/**/*.intspec.js'])
.pipe(istanbul({ includeUntested: true}))
.pipe(istanbul.writeReports({
dir: './coverage',
reporters: [ 'html' ],
reportOpts: { dir: './coverage'}
}))
.on('end', cb);
})
gulp.task('api-tests', function (cb) {
gulp.src(['./server/**/*.intspec.js'])
.pipe(mocha({
harmony: true,
timeout: '10000',
reporter: 'spec',
excludes: ['*.spec.js', '*.watcherSpec.js']
}))
.on('end', cb);
});
Я также попытался переместить эти тестовые файлы в другую папку, и только мои фактические файлы кода были в моей папке контроллера, и изменил мое местоположение src в gulp на gulp.src(['./server/controller/*. Js']) он генерирует отчет с пустой таблицей, за исключением заголовков.
Еще одна вещь, которую я попробовал, чтобы сохранить мои файлы вместе, как есть, и попытался исключить файлы intspec, изменив gulp, как показано ниже, но он все еще сканирует файлы.intspec вместе со всеми файлами.js, а также публикуемый им отчет не Похоже, что он не подходит для файлов фактического кода, я уверен, что мой тест покрывает не менее 25% кода, но в отчете говорится, что менее 2%
gulp.src(['./server/**/*.js'])
.pipe(istanbul({ includeUntested: true,
excludes: ['*.intspec.js']}))