Jest - Не удается найти модуль 'source-map' из 'source-map-support.js' - PullRequest
0 голосов
/ 22 октября 2018

У меня проблема в том, что я получаю ошибку:

Cannot find module 'source-map' from 'source-map-support.js'
Ran all test suites matching /Foo-test/i.
T:\public_html\testProj>jest Foo-test
FAIL  //XXXX.de/XXXX/Users/XXX/public_html/testProj/src/__tests__/Foo-test.js
? Test suite failed to runtml/testProj/src/__tests__/Foo-test.js
Cannot find module 'source-map' from 'source-map-support.js'
at Resolver.resolveModule (T:/public_html/testProj/node_modules/jest-resolve/build/index.js:221:17)

Если я пытаюсь запустить тест с Jest.

Мой .babelrc выглядит следующим образом:

{
  "presets": ["env", "react"],
  "sourceMaps": "both",
  "plugins": [
    "add-module-exports",
    "react-hot-loader/babel",
    "source-map-support"
  ]
}

Мой package.json выглядит так:

{
  "name": "testproject",
  "version": "1.8.0",
  "main": "index.js",
  "license": "MIT",
  "private": true,
  "devDependencies": {
    "@babel/runtime": "^7.0.0-rc.1",
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.3",
    "babel-plugin-add-module-exports": "^0.2.1",
    "babel-preset-env": "^1.6.1",
    "babel-preset-react": "^6.24.1",
    "copy-webpack-plugin": "^4.5.2",
    "css-hot-loader": "^1.3.9",
    "eslint": "4.9.0",
    "eslint-config-airbnb": "^16.1.0",
    "eslint-loader": "^2.0.0",
    "eslint-plugin-import": "2.7.0",
    "eslint-plugin-jsx-a11y": "6.0.2",
    "eslint-plugin-react": "7.4.0",
    "file-loader": "^1.1.11",
    "foundation-sites": "^6.4.4-rc1",
    "node-sass": "^4.8.3",
    "prettier": "^1.14.2",
    "react-hot-loader": "4.1.3",
    "sass-loader": "^6.0.7",
    "source-map": "^0.7.3",
    "webpack": "^4.0.1",
    "webpack-cli": "^2.0.9",
    "webpack-dev-server": "^3.0.0"
  },
  "dependencies": {
    "@material-ui/core": "^1.5.0",
    "axios": "^0.18.0",
    "babel-jest": "^23.6.0",
    "chai": "^4.2.0",
    "core-js": "^2.5.3",
    "enzyme": "^3.7.0",
    "enzyme-adapter-react-16": "^1.6.0",
    "jest": "^23.6.0",
    "prop-types": "^15.6.0",
    "react": "^16.3.0",
    "react-accessible-accordion": "^2.4.4",
    "react-dom": "^16.3.0",
    "react-redux": "^5.0.7",
    "react-router-dom": "^4.2.2",
    "react-string-replace": "^0.4.1",
    "redux": "^3.7.2",
    "redux-thunk": "^2.3.0",
    "sinon": "^7.0.0"
  },
  "scripts": {
    "dev": "webpack-dev-server --hot",
    "build": "webpack --colors --profile --progress --env.mode production",
    "lint": "eslint ./src/ --ext .js,.jsx",
    "test": "jest"
  },
  "jest": {
    "moduleDirectories": [
      "node_modules",
      "src"
    ],
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx"
    ]
  }
}

Сам тест вроде бы в порядке, но я все же получаю ошибку.

Я пробовал разные решения:

- Некоторые люди говорят, что было бы необходимо добавить эти конфиги в пакет. Json:

"jest": {
    "moduleDirectories": [
      "node_modules",
      "src"
    ],
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx"
    ]
  }

Но мне это тоже не повезло.Может кто-нибудь помочь здесь?

Ответы [ 2 ]

0 голосов
/ 21 мая 2019

К вашему сведению, это случилось со мной на работе.Мне не хватает эксперта, чтобы понять, что происходит под капотом, но корень моей проблемы был в том, что мой проект работал внутри webpack в режиме dev на основном терминале, в то же время я пытался запуститьтесты во 2-м терминале.

После того, как я остановил сервер dev, после этого тесты прошли нормально.

0 голосов
/ 30 января 2019

Устраните эту проблему при использовании Jest Test Runner в VS Code.Взяв указатель от https://github.com/facebook/jest/issues/6880#issuecomment-441499110, Я заметил, что мой jest.config.js содержал

    moduleDirectories: ["<rootDir>/node_modules", "<rootDir>/ClientApp"]

Изменение его на

    moduleDirectories: ["node_modules", "ClientApp"]

устранило проблему.

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