Jest: Running with coverage option throws "Cannot find module 'lcov'"

Created on 25 Mar 2020  ·  5Comments  ·  Source: facebook/jest

🐛 Bug Report

Running with jest --coverage throws the following error:

yarn run v1.19.1
$ jest --coverage
 PASS  src/index.test.js
  add
    ✓ should work (3ms)

----------|---------|----------|---------|---------|-------------------
File      | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------|---------|----------|---------|---------|-------------------
All files |     100 |      100 |     100 |     100 |
 index.js |     100 |      100 |     100 |     100 |
----------|---------|----------|---------|---------|-------------------

        Failed to write coverage reports:
        ERROR: Error: Cannot find module 'lcov'
Require stack:
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/istanbul-reports/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/coverage_reporter.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/TestScheduler.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/jest.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest-cli/build/cli/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest-cli/bin/jest.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest/bin/jest.js
        STACK: Error: Cannot find module 'lcov'
Require stack:
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/istanbul-reports/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/coverage_reporter.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/TestScheduler.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/jest.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest-cli/build/cli/index.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest-cli/bin/jest.js
- /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/jest/bin/jest.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:892:15)
    at Function.Module._load (internal/modules/cjs/loader.js:785:27)
    at Module.require (internal/modules/cjs/loader.js:956:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.create (/Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/istanbul-reports/index.js:19:20)
    at /Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/coverage_reporter.js:300:20
    at Array.forEach (<anonymous>)
    at CoverageReporter.onRunComplete (/Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/reporters/build/coverage_reporter.js:298:25)
    at ReporterDispatcher.onRunComplete (/Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/ReporterDispatcher.js:71:10)
    at TestScheduler.scheduleTests (/Users/shihsyuanyan/Desktop/test/jest-coverage-issue/node_modules/@jest/core/build/TestScheduler.js:280:5)

Test Suites: 1 passed, 1 total
Tests:       1 passed, 1 total
Snapshots:   0 total
Time:        0.48s, estimated 1s
Ran all test suites.

To Reproduce

  1. Create a new folder and initialize with yarn init
  2. yarn add --dev jest
  3. yarn run jest --init
  4. write some tests
  5. yarn run jest --coverage
  6. It throws errors

Expected behavior

I checked the coverageReports option in the documentation. It should generate lcov related reports without any error, I guess?

Link to repl or repo (highly encouraged)

jest-coverage-issue. Simply run yarn run test:cov to reproduce the error.

envinfo

  System:
    OS: macOS Mojave 10.14.1
    CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
  Binaries:
    Node: 13.1.0 - ~/.nvm/versions/node/v13.1.0/bin/node
    Yarn: 1.19.1 - /usr/local/bin/yarn
    npm: 6.12.1 - ~/.nvm/versions/node/v13.1.0/bin/npm
  npmPackages:
    jest: ^25.1.0 => 25.1.0
Bug Report Needs Repro Needs Triage

Most helpful comment

That's weird, some bug in node then? Closing, but can reopen if it's reproducible in current versions of node

All 5 comments

I cannot reproduce this from your reproduction

image

I'm able to reproduce.

System:
  Model Name:   MacBook Pro
  Model Identifier: MacBookPro12,1
  Processor Name:   Intel Core i5
  Processor Speed:  2.7 GHz
  OS: macOS Movaje 10.14.6
Binaries:
  Yarn: 1.3.2
  Node: 13.0.0
  npm: 6.14.3
Packages:
  Jest v25.1 .0 

Stack trace:

Failed to write coverage reports:
        ERROR: Error: Cannot find module 'lcov'
Require stack:
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/istanbul-reports/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/coverage_reporter.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/core/build/TestScheduler.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/core/build/jest.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/jest-cli/build/cli/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/jest-cli/bin/jest.js
        STACK: Error: Cannot find module 'lcov'
Require stack:
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/istanbul-reports/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/coverage_reporter.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/core/build/TestScheduler.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/core/build/jest.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/jest-cli/build/cli/index.js
- /Users/famoraes/Documents/Projects/React/telescopio/node_modules/jest-cli/bin/jest.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:795:15)
    at Function.Module._load (internal/modules/cjs/loader.js:688:27)
    at Module.require (internal/modules/cjs/loader.js:850:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.create (/Users/famoraes/Documents/Projects/React/telescopio/node_modules/istanbul-reports/index.js:19:20)
    at /Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/coverage_reporter.js:300:20
    at Array.forEach (<anonymous>)
    at CoverageReporter.onRunComplete (/Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/reporters/build/coverage_reporter.js:298:25)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at ReporterDispatcher.onRunComplete (/Users/famoraes/Documents/Projects/React/telescopio/node_modules/@jest/core/build/ReporterDispatcher.js:71:10)

Solved upgrade node version to v13.11.0.

That's weird, some bug in node then? Closing, but can reopen if it's reproducible in current versions of node

I have the same problem. I tried to clone my project to another folder and it worked for the first time and never succeeded again.

Was this page helpful?
0 / 5 - 0 ratings