Стамбул : информация о покрытии не собиралась, выйдите без записи информации о покрытии.

Я пытаюсь получить покрытие кода моего проекта node.js. Я использую мокко и стамбул для этой цели. Но я получаю 0 при прохождении Стамбула: информация о покрытии не собиралась, выйдите без записи информации о покрытии Mocha и Стамбул установлены локально. Скрипт внутри package.json выглядит так

"scripts": {
    "test": "node_modules/.bin/mocha",
    "test:coverage": "./node_modules/.bin/babel-istanbul cover ./node_modules/.bin/_mocha"
  }

Структура папок выглядит так: -----Проект ----node_modules ---test --unit -01test1.tes.js -02test2.test.js

Мой файл .istanbul.yml

verbose: false
instrumentation:
    root: ./node_modules/.bin/istanbul
    default-excludes: true
    excludes: []
    embed-source: false
    variable: __coverage__
    compact: true
    preserve-comments: false
    complete-copy: false
    save-baseline: false
    baseline-file: ./coverage/coverage-baseline.json
reporting:
    print: summary
    reports:
        - lcov
    dir: ./coverage
    watermarks:
        statements: [50, 80]
        lines: [50, 80]
        functions: [50, 80]
        branches: [50, 80]
hooks:
    hook-run-in-context: false
    post-require-hook: null

я управляю командой

Тест запуска npm: покрытие

в терминале (macOS). Я довольно новичок в этом, поэтому любой вклад очень приветствуется. Пожалуйста, помогите мне с этим, я уже потратил целый день на это.


person user2991413    schedule 23.02.2017    source источник


Ответы (2)


Не могли бы вы попробовать default-excludes: false, так как кажется, что ваши тесты находятся в node_modules?

person SGD    schedule 16.06.2017

Я ответил здесь

Я использовал модуль babel-node, и он у меня работает. Я использую команду ниже.

babel-node node_modules/.bin/babel-istanbul cover _mocha -- --recursive tests/test.*.js --exit
person A_J    schedule 01.06.2018