Тестовое покрытие с использованием jest-junit не выполняется в проекте create-реагировать на приложение - PullRequest
0 голосов
/ 14 ноября 2018

В проекте create-react-app/react-scripts@2.1.1 я пытаюсь создать отчет о покрытии, используя jest-junit .К сожалению, происходит сбой со следующим:

$ yarn run test --coverage
      Failed to write coverage reports:
      ERROR: Error: Invalid report format [jest-junit]
      STACK: Error: Invalid report format [jest-junit]
  at Object.module.exports.create (D:\Users\username\Documents\Project\node_modules\istanbul-api\lib\input-error.js:6:15)
  at Reporter.add (D:\Users\username\Documents\Project\node_modules\istanbul-api\lib\reporter.js:51:30)
  at D:\Users\username\Documents\Project\node_modules\istanbul-api\lib\reporter.js:62:18
  at Array.forEach (<anonymous>)
  at Reporter.addAll (D:\Users\username\Documents\Project\node_modules\istanbul-api\lib\reporter.js:61:14)
  at D:\Users\username\Documents\Project\node_modules\jest-cli\build\reporters\coverage_reporter.js:180:18
  at Generator.next (<anonymous>)
  at step (D:\Users\username\Documents\Project\node_modules\jest-cli\build\reporters\coverage_reporter.js:75:30)
  at D:\Users\username\Documents\Project\node_modules\jest-cli\build\reporters\coverage_reporter.js:86:15
  at process._tickCallback (internal/process/next_tick.js:68:7)

Я не сталкиваюсь с ошибками, если я запускаю yarn run test.Следующий файл конфигурации был добавлен в файл package.json проекта:

{
  ...
  "jest": {
    "collectCoverageFrom": [
      "src/**/*.{js,jsx,ts,tsx}",
      "!src/**/*.d.ts",
      "!src/**/__stories__/",
      "!<rootDir>/node_modules/"
    ],
    "coverageReporters": [
      "jest-junit"
    ]
  }
  ...
}

Кто-нибудь успешно настроил jest-junit в проекте create-реагировать-приложение @ 2?

1 Ответ

0 голосов
/ 14 ноября 2018

Спасибо @jonrsharpe за быстрый комментарий.Я не уделял достаточно пристального внимания ... моей ошибкой было добавление jest-junit в coverReporters (в отличие от репортеров).

К сожалению, create-реагировать-приложение @ 2 не поддерживает пользовательских репортеровКонфигурация в package.json.Интересно, что работает следующая команда:

$ yarn run test --coverage --reporters=default --reporters=jest-junit

Я привык к большинству конфигов create-реагировать на приложения, переопределяя любые явно определенные опции.Однако, кажется, что исключение (или лазейка?) Существует для yarn run test.С учетом вышеизложенного я получаю нужный файл junit.xml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...