10
나는 내 환경에서 Jest를 작동시키는 법을 알아 내려고하고 있는데,이 프로젝트는 node_modules 내의 하위 디렉토리에 커스텀 컴포넌트를 가지고있다. 내가 NodeJS 7.7.1에 jest ^20.0.3
및 babel-jest ^20.0.3
를 실행 해요node_modules 구성 요소에서 예기치 않은 토큰 가져 오기를 실행합니다. 바벨이 뛰지 못해?
FAIL src/mantle/tools/searchindexer/apps/DataMover/js/components/__test__/GenericJobsTable.test.jsx
● Test suite failed to run
/Users/rob/repos/mesa/ui/node_modules/iggy-common/components/IggyTable.jsx:1
({"Object.":function(module,exports,require,__dirname,__filename,global,jest){import React, {PropTypes} from "react";
^^^^^^
SyntaxError: Unexpected token import
at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/ScriptTransformer.js:289:17)
at Object. (src/mantle/tools/searchindexer/apps/DataMover/js/components/JobsTable/GenericJobsTable.jsx:7:18)
at Object. (src/mantle/tools/searchindexer/apps/DataMover/js/components/__test__/GenericJobsTable.test.jsx:5:25)
Test Suites: 1 failed, 1 total
Tests: 0 total
Snapshots: 0 total
Time: 2.4s
Ran all test suites matching "GenericJobsTable".
:
이 오류를 받고 있어요. 나는이 볼 jest --debug
내가 실행하는 경우
{
"presets": ["es2015", "react"]
}
:
"jest": {
"verbose": true,
"transform": {
"^.+\\.jsx$": "babel-jest"
},
"moduleFileExtensions": [
"js",
"jsx"
],
"moduleDirectories": [
"node_modules"
]
}
내 루트 .babelrc
과 같이 정의했다 : 내 package.json에서
, 이것은 내가 가지고있는 농담 구성 섹션
{
"config": {
"automock": false,
"browser": false,
"cache": false,
"cacheDirectory": "/var/folders/wz/hd_hp8zn6gq7p6816w1hwx640000gn/T/jest_dx",
"clearMocks": false,
"coveragePathIgnorePatterns": [
"/node_modules/"
],
"globals": {},
"haste": {
"providesModuleNodeModules": []
},
"moduleDirectories": [
"node_modules"
],
"moduleFileExtensions": [
"js",
"jsx"
],
"moduleNameMapper": {},
"modulePathIgnorePatterns": [],
"name": "898fa528b40c10619090191345fdb241",
"resetMocks": false,
"resetModules": false,
"rootDir": "/Users/rob/repos/mesa/ui",
"roots": [
"/Users/rob/repos/mesa/ui"
],
"setupFiles": [
"/Users/rob/repos/mesa/ui/node_modules/regenerator-runtime/runtime.js"
],
"snapshotSerializers": [],
"testEnvironment": "jest-environment-jsdom",
"testMatch": [
"**/__tests__/**/*.js?(x)",
"**/?(*.)(spec|test).js?(x)"
],
"testPathIgnorePatterns": [
"/node_modules/"
],
"testRegex": "",
"testRunner": "/Users/rob/repos/mesa/ui/node_modules/jest-jasmine2/build/index.js",
"testURL": "about:blank",
"timers": "real",
"transform": [
[
"^.+\\.jsx$",
"/Users/rob/repos/mesa/ui/node_modules/babel-jest/build/index.js"
]
],
"transformIgnorePatterns": [
"/node_modules/"
]
},
"framework": "jasmine2",
"globalConfig": {
"bail": false,
"coverageReporters": [
"json",
"text",
"lcov",
"clover"
],
"expand": false,
"mapCoverage": false,
"noStackTrace": false,
"notify": false,
"projects": [
"/Users/rob/repos/mesa/ui"
],
"rootDir": "/Users/rob/repos/mesa/ui",
"testPathPattern": "",
"testResultsProcessor": null,
"updateSnapshot": "new",
"useStderr": false,
"verbose": true,
"watch": false,
"watchman": true
},
"version": "20.0.3"
}
내가 여기 잘못 구성했을 수 있습니다.
, 그것은 보인다 문제는 node_modules /이기의 예약-님이 그 성가신 파일의 하나 인 일반 팔자 'JS 파일이 필요 transpilation했다 감아 node_modules 디렉토리 밑에 아무것도 옮겨서는 안된다. 그러나 나는 node_modules/iggy-common 아래에서 아무 것도 쓸 수 없기를 바란다. –