web-dev-qa-db-fra.com

Jest - Importation de jeton inattendue

J'essaie d'apprendre à faire des tests unitaires avec React et Jest. J'ai rencontré l'erreur suivante:

Importation de jeton inattendue

Voici mes presets babel:

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

Voici le fichier que je suis en train de tester:

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() {} });

et voici mon package.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"
}

Je ne sais pas pourquoi ça me donne ce message?

5
red house 87

Il semble que babel-jest manque dans vos dépendances. C'est pourquoi jest n'exécute pas babel sur votre code ES6 + avant d'exécuter les tests.

5
Andrea Carraro

Je suis à peu près sûr que vous avez besoin d'ajouter vos préréglages babel pour tester également.

Alors...

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