Я пытаюсь выяснить, как протестировать событие onPress с помощью Jest в приложении React-Native, чтобы я мог убедиться в правильности вызывается функция.Как имитировать событие на единичном тесте с Jest, Enzyme for React-Native
Я просмотрел документацию и Google, но не смог найти решение для этого в React-Native.
Это то, что я обнаружил, что должен работать для React-Native с enzyme
:
const mockFunc = jest.fn();
const component = mount(<MyComponent onPress={mockFunc} />);
component.simulate('press');
expect(mockFunc).toHaveBeenCalled();
Но это не работает. Похоже, mount
не работает, и я получаю этот выход:
ReferenceError: document is not defined
Я попытался с shallow
вместо но TouchableOpacity
не получает вынесенное, когда я смотрю на выходе функции ... и вы уже догадались , он тоже не работает. Не уверен, что делать.
Кто-нибудь нашел способ проверить события на React-Native?
Благодаря
Я предполагаю, что вы используете фермент, поэтому 'p.simulate ('нажмите');' должна работать. –
Фермент 'mount', похоже, не работает с React-Native, и я не хочу использовать« мелкий ». 'ReferenceError: документ не определен' – alexmngn
Какое событие вы пытаетесь протестировать? Изменилось ли это состояние? Или что именно пытаются проверить? Более подробная информация об этом может помочь. –