2015-12-18 11 views
3

Моя цель - написать src и проверить файлы в es6, все в одном каталоге (я хочу, чтобы мои тестовые файлы были бок о бок с моим исходные файлы) и получить отчет о покрытии с исходными файлами.Обложка babel-istanbul исключает файл из отчета, но держит перерасход

Лучшее, что я могу придумать в этот момент, чтобы мои тестовые файлы включены в отчет покрытия с помощью следующей команды:

./node_modules/.bin/babel-node node_modules/.bin/babel-istanbul \ 
    cover \ 
    node_modules/.bin/_mocha -- 'src/**/*.spec.*.js' 

Я попытался с помощью cover -x 'src/**/*.spec.*.js', он также исключает файлы из transpiling и mocha, тогда не удается выполнить тесты. Для жизни, я не могу понять, как сделать эквивалент чего-то вроде этого:

./node_modules/.bin/babel-node node_modules/.bin/babel-istanbul \ 
    cover -x 'src/**/*.spec.*.js' \ 
    node_modules/.bin/_mocha -- --require babel-core/register 'src/**/*.spec.*.js' 

это будет работать все мои тесты хорошо, но имеет отрицательный эффект дает мне:

No coverage information was collected, exit without writing coverage information

Поэтому я не слишком далек от того, что хочу, я думаю, что я просто пропустил эту последнюю часть, и если кто-то может помочь здесь, это было бы действительно оценено.

С уважением, D.

+0

Если кто-то еще когда-либо повторяет эту проблему, я теперь перешел на новый инструмент istanbul [nyc] (https://www.npmjs.com/package/nyc), который делает это намного проще. – Danosaure

ответ

3

Никогда не получил -x возможность делать то, что я хотел. Если вы не возражаете, используя .istanbul.yml файл это работало для меня, чтобы бок о бок испытаний, исключенные из отчетов покрытия ...

npm run cover Команда:

babel-node node_modules/.bin/babel-istanbul cover _mocha -- --opts mocha.opts

project_dir/mocha.opts файл:

src/**/*.test.js 
--compilers js:babel-register 
--require babel-polyfill 

project_dir/.istanbul.yml файл:

instrumentation: 
    root: src 
    include-all-sources: true 
    verbose: true 
    excludes: ["*.test.js"] 
reporting: 
    dir: "coverage" 
+0

Спасибо, но с этим я получаю: 'Информация о покрытии не была собрана, выходите без записи информации о покрытии' – Danosaure

+0

Я достал' -компиляторы js: babel-core/register' и, похоже, сработал. Я был заблокирован, поэтому остановил мои тесты, но я немного поработаю над этим и посмотрю, появятся ли какие-либо другие проблемы. – Danosaure