Я использую React Native 0.73.0, React 18.2.0, Jest 29.6.3 и @testing-library/react-c-native 12.4.3. Когда я запускаю команду npx jest src/components/actionbutton/__ tests __/actionbutton.test.js -detectopenhandles Это дает мне ошибку
`actionbutton› Проверьте render props › />Trying to detect host component names triggered the following error:
Cannot use import statement outside a module
There seems to be an issue with your configuration that prevents React Native Testing Library from working correctly.
Please check if you are using compatible versions of React Native and React Native Testing Library.`
< /code>
my Jest Config находится в package.json, < /p>
"Jest": {
"Preset": "React-Cniate",
"setupfilesafterenv": [
"./setuptests.js"
],
"transform": {
"^.+\.js$ ": "Babel-jest"
},
"setupfiles": [
"./jest-setup.js"
],
"transformignorePatterns": [
"node_modules/(? -Дадаптер |@React-C-Colyfills |@Testing-Library/React-National) "
],
"moduledirectories": [
"src",
"node_modules"
],
"modulenamemapper": {
"React- Нативно-расширенная таблица ":" Mocks /react-can-extended-stylesheet.js "
},
"modulefileextensions": [
"js",
"jsx",
"json",
"Узел"
] } < /p>
Мой тестовый пример тоже выглядит хорошо, но я не уверен, в чем проблема < /p>
import React from 'react';
import {render, fireEvent} from '@testing-library/react-native';
import {ActionButton} from '../ActionButton';
describe('ActionButton', () => {
describe('Rendering', () => {
it('should match to snapshot', () => {
const {toJSON} = render();
expect(toJSON()).toMatchSnapshot();
});
});
describe('Check render props', () => {
const title = 'Test';
const icon = 'card';
const mockFn = jest.fn();
it('should render correct title', () => {
const {getByText} = render(
,
);
const titleElement = getByText(title);
expect(titleElement).toBeTruthy();
});
it('should render correct icon', () => {
const {getByProps} = render(
,
);
const iconElement = getByProps({name: icon});
expect(iconElement).toBeTruthy();
});
it('should call onPress', () => {
const {getByTestId} = render(
,
);
const button = getByTestId('action-button'); // Assuming you're using testID to identify the button
fireEvent.press(button);
expect(mockFn).toHaveBeenCalledTimes(1);
});
});
});
< /code>
Шаги по устранению неисправностей. < /li>
обеспечить использование Babel-rest для преобразования файлов. node_modules. < /li>
подтвердил, что я использую правильные версии реагирования нативного и реагировать нативную библиотеку тестирования. < /li>
< /ol>
Вопросы: < /p>
Почему шутка бросает оператор «не может использовать импорт за пределами модуля»? Чтобы изменить мою шутку Конфигурация дальше для правильного преобразования зависимостей?>
Подробнее здесь: https://stackoverflow.com/questions/794 ... e-a-module
React Tink с шутом не может использовать оператор Import за пределами модуля ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
SyntaxError: не может использовать оператор Import за пределами модуля в Vercel
Anonymous » » в форуме Javascript - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Преимущество заявленного @import по сравнению с скомпилированным @import в CSS
Anonymous » » в форуме CSS - 0 Ответы
- 42 Просмотры
-
Последнее сообщение Anonymous
-