Получите неверное покрытие теста во время юнит-теста Vue.js - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь выполнить модульный тест Vuejs с использованием karma + mocha + chai + webpack и получить покрытие кода с помощью istanbul.

Вот проблема, когда я импортирую некоторую функцию utils или какой-либо другой компонент в свой компонент, чтобыпротестировано, покрытие кода, которое я получу, будет включать этот код утилит. Это не то, что я хочу.

В компоненте, который я хочу протестировать:

// src/home/mod_setting/upgrade_management/common/uploader.vue

import FileUploader from 'src/components/file_upload/index';
import Uploader from './uploader';
import logger from 'src/util/logger';

Отчет покрытия будет включать эти файлы,enter image description here

Есть ли решение?

1 Ответ

0 голосов
/ 19 октября 2018

Это может быть возможно путем воздействия на запись 'препроцессора' в вашей конфигурации karma: только файлы, соответствующие этому, будут отслеживаться на предмет покрытия.

См. Следующую проблему> https://github.com/karma-runner/karma-coverage/issues/13

В вашемдело что-то вроде

preprocessor: { 'src/!(util)/**/*.js' : 'coverage' }

должно сработать

...