Ошибка неожиданного импорта токена в тесте реакции на шутку

Мой файл jest.config.js содержит данные, приведенные ниже.

Но когда я запускаю тестовую команду, она дает мне ошибку SyntaxError:

Неожиданный импорт токена

Ошибка, которую я получаю, когда запускаю тестовую команду

е

const path = require('path');

module.exports = {
bail: true,
rootDir: process.cwd(),
testRegex: '/__tests__/.*\\.test\\.jsx?$',
transform: { '/__tests__/.*': path.resolve(__dirname, 'jest.transform.js'),},
verbose: true,
};

person Anon john    schedule 06.09.2018    source источник
comment
пожалуйста, поделитесь своим jest.transform.js   -  person Sakhi Mansoor    schedule 06.09.2018


Ответы (2)


Обычно это происходит, когда ваши тесты и код не обрабатываются Babel. Jest — это приложение Node.js, а Node.js не понимает синтаксис import.

Я вижу, что вы определили свою собственную конфигурацию transform. В документация Jest говорит, что если вы установите какое-либо значение для transform он перезапишет значения по умолчанию, и Jest не будет предварительно обрабатывать ваш код с помощью babel-jest. Чтобы решить эту проблему, вам нужно явно указать, какие файлы нужно преобразовать с помощью babel-jest:

transform: {
  '/__tests__/.*': path.resolve(__dirname, 'jest.transform.js'),
  "^.+\\.(js|jsx)$": "babel-jest",
},
person Oleksandr Kovpashko    schedule 06.09.2018
comment
Я пробовал это, и все же я получаю ту же ошибку. - person Anon john; 07.09.2018
comment
Следующее место, где может быть причина таких ошибок, это .babelrc. Если вы отключили обработку импорта с помощью параметра modules: false для babel-preset-env или babel-preset-es-2015, они также не будут обрабатываться в тестах. Не могли бы вы показать содержимое вашего файла .babelrc? - person Oleksandr Kovpashko; 07.09.2018

Пожалуйста, установите "babel-jest": "^23.0.1", и добавьте следующую конфигурацию преобразования:

const path = require('path');
module.exports = {
bail: true,
rootDir: process.cwd(),
testRegex: '/__tests__/.*\\.test\\.jsx?$',
"transform": {
  "\\.js$": "<rootDir>/node_modules/babel-jest"
},
verbose: true,
};

Дайте мне знать, если проблема все еще сохраняется

person Sakhi Mansoor    schedule 07.09.2018