Я пытаюсь протестировать некоторые компоненты React с помощью Jest.Проблемы с использованием Jest с реакционной загрузкой
Я могу успешно протестировать a) простые JS-файлы и b) реактивировать компоненты, написанные на CJSX (Coffeescript и JSX). Была необходима некоторая конфигурация, использующая препроцессор для Jest для обработки файлов CJSX в JS, но это похоже на работу. По крайней мере, я могу протестировать простые компоненты React, написанные на CJSX. Я не думаю, что эта проблема специфична для компиляции файлов CJSX.
Однако: когда я ввожу реакцию-бутстрап, возникают проблемы. Это необходимо, потому что все компоненты, которые я хочу протестировать, используют реакцию-бутстрап.
Это происходит одинаково, когда я развязываю реакцию-бутстрап и когда я оставляю Джест, чтобы автоматически издеваться над ним. В любом случае он должен разбирать файлы в своем тестовом бегуне - и это происходит, когда возникает проблема.
Это специфическое сообщение об ошибке:
SyntaxError: пути/компоненты/scripts.cjsx: /node_modules/react-bootstrap/lib/index.js: /node_modules/реагирует-самозагрузка/Библиотека/utils/bootstrapUtils.js: /node_modules/react-tools/src/vendor/core/warning.js: Неожиданный токен ...
scripts.cjsx - это файл, содержащий компонент, который я пытаюсь проверить, - и файл, в котором я действительно требую «реакция-бутстрап»
И полный стек:
at Object.exports.runInContext (vm.js:43:16)
at JSDOMEnvironment.runSourceText (node_modules/jest-cli/src/environments/JSDOMEnvironment.js:40:10)
at Object.runContentWithLocalBindings (node_modules/jest-cli/src/lib/utils.js:378:17)
at Loader._execModule (node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:234:11)
at Loader.requireModule (node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:845:14)
at Loader.requireModuleOrMock (node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:875:19)
at Object.<anonymous> (node_modules/react-bootstrap/lib/utils/bootstrapUtils.js:19:16)
at Object.runContentWithLocalBindings (node_modules/jest-cli/src/lib/utils.js:397:17)
at Loader._execModule (node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:234:11)
at Loader.requireModule (node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:845:14)
Я не разрешил это. Мы перешли на использование webpack для создания тестовых файлов с использованием этого усовершенствованного модуля npm: https://www.npmjs.com/package/jestpack –