Javascript 如何在另一个组件中模拟react本机组件?
我有一个从@react native community/datetimepicker导入的组件,这个组件呈现一个选择器,用户在其中选择日期。问题是,我无法使用getByTestId或任何其他查询选择选择器,如果选择了,就无法模拟滚动并选择日期。到目前为止,我已尝试在测试中使用简单的输入替换选择器,如下所示:Javascript 如何在另一个组件中模拟react本机组件?,javascript,reactjs,react-native,unit-testing,jestjs,Javascript,Reactjs,React Native,Unit Testing,Jestjs,我有一个从@react native community/datetimepicker导入的组件,这个组件呈现一个选择器,用户在其中选择日期。问题是,我无法使用getByTestId或任何其他查询选择选择器,如果选择了,就无法模拟滚动并选择日期。到目前为止,我已尝试在测试中使用简单的输入替换选择器,如下所示: const mockDatePicker = () => <Input testID='mockPicker' />; jest.mock('@react-native
const mockDatePicker = () => <Input testID='mockPicker' />;
jest.mock('@react-native-community/datetimepicker', () => mockDatePicker);
找不到testID的任何实例
我曾试图窥视该组件,但它错误地说它不是一个函数
对于使用标准字段的其他输入,我可以通过testID选择它们,并在测试中将文本更改为受控值
const lastNameInput = getByLabelText('Last Name');
await fireEvent.changeText(lastNameInput, lastName);
有没有办法模拟渲染组件,以便控制dateTimePicker返回的内容
const lastNameInput = getByLabelText('Last Name');
await fireEvent.changeText(lastNameInput, lastName);