2017-12-08 2 views
2

나는 React와 jest로 단위 테스트를하는 법을 배우려고합니다. 나는 다음과 같은 오류로 실행했습니다 여기Jest - 예기치 않은 토큰 가져 오기

import jest from 'jest'; 
import React from 'react'; 
import { shallow } from 'enzyme'; 
import Step from '../src/components/step.js'; 

const wrapper = shallow(<Step />); 
wrapper.find('a').simulate('click', { preventDefault() {} }); 

과 : 여기

{ 
    "presets": ["es2015", "stage-0", "react"], 
    "env": { 
    "test": { 
     "plugins": ["transform-es2015-modules-commonjs"] 
    } 
} 
} 

파일 내가 테스트를 시도하고있다 : 여기

Unexpected token import

내 바벨 사전입니다 내 패키지 .json :

{ 
    "name": "react-simple-boilerplate", 
    "version": "1.0.0", 
    "description": "Simple and lightweight Boilerplate for ReactJS projects", 
    "scripts": { 
    "lint": "eslint src", 
    "start": "node server.js", 
    "test": "jest" 
    }, 
    "devDependencies": { 
    "babel-core": "^6.24.1", 
    "babel-loader": "^7.0.0", 
    "babel-plugin-transform-es2015-modules-commonjs": "^6.26.0", 
    "babel-preset-es2015": "^6.24.1", 
    "babel-preset-react": "^6.24.1", 
    "babel-preset-stage-0": "^6.24.1", 
    "css-loader": "^0.28.0", 
    "enzyme": "^3.2.0", 
    "enzyme-adapter-react-16": "^1.1.0", 
    "eslint": "^3.19.0", 
    "eslint-plugin-react": "^6.10.3", 
    "jest": "^21.2.1", 
    "node-sass": "^4.5.2", 
    "react-addons-test-utils": "^15.6.2", 
    "sass-loader": "^6.0.3", 
    "style-loader": "^0.16.1", 
    "webpack": "^2.4.1", 
    "webpack-dev-server": "^2.4.4" 
    }, 
    "dependencies": { 
    "babel-loader": "^7.0.0", 
    "react": "^15.5.4", 
    "react-dom": "^15.5.4" 
    }, 
    "main": "server.js" 
} 

왜이 메시지를 나에게 주는가?

답변

1

그것은 당신의 의존성 중 누락 된 babel-jest 것 같습니다. 따라서 jest은 테스트를 실행하기 전에 ES3 + 코드에서 babel을 실행하지 않습니다.

+0

그게 다행 이네! –

-1

테스트에 babel 사전 설정을 추가해야 jest가 테스트 할 env 변수를 설정해야합니다.

그래서 ...

"test": { 
    "plugins": ["transform-es2015-modules-commonjs"],   
    "presets": ["es2015", "react", "stage-0"] 
} 
+0

여전히 동일한 오류가 두려워 –

관련 문제