Я создал свое приложение с помощью create-реагировать на приложение и установил Redux, и все работает, как ожидалось.
При создании тестов я столкнулся с несколькими проблемами с одним компонентом, который использовал открытые слои, но исправил эту проблему с помощью командной строки при запуске тестов:
npm test - --transformIgnorePatterns 'node_modules / (?! (ol) /) '--setupFiles' jest-canvas-mock 'jest --no-cache
Тест, содержащий мою ссылку на OpenLayers, теперь проходит все хорошо, ноУ меня есть еще один компонент, который использует Tab и Tabs по реакции-bootstrat / es / Tab и Tabs с уважением.
Простой тест для этого компонента выглядит следующим образом:
import React from 'react';
import ReactDOM from 'react-dom';
import SideMenu from '../../side-menu/side-menu';
it ('should render without crashing', () => {
const div = document.createElement ('div');
ReactDOM.render (<SideMenu/>, div);
ReactDOM.unmountComponentAtNode(div);
});
При выполнении тестовой команды это единственный тест, который не проходит в моем проекте со следующей ошибкой:
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import _extends from "@babel/runtime-corejs2/helpers/esm/extends";
^^^^^^^^
SyntaxError: Unexpected identifier
1 | import React, { Component } from 'react';
> 2 | import Tabs from "react-bootstrap/es/Tabs";
| ^
3 | import Tab from "react-bootstrap/es/Tab";
4 | import AvailableLayersMenu from '../available-layers-window/available-layers-menu-tree';
5 |
at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/script_transformer.js:403:17)
at Object.<anonymous> (src/side-menu/side-menu.js:2:1)
Мой файл .babelrc имеет видследует:
{
"presets": [
"env",
"react",
["es2015", {"modules": true}],
"stage-1"
]
}
Я не уверен, что происходит, и я занимался этим в течение 2 полных дней без прогресса в этом последнем тесте.Любая помощь будет высоко ценится.