如何解决如何在 React Native 中为包含 ThemeProvider 的组件编写测试作为其子组件的包装器
以下是由react-native-elements提供的ThemeProvider包裹的基本功能组件
const Page = ({route,navigation}: Props) => {
// some states and functions
return(
<View>
<ThemeProvider
theme={
//some code here
}>
<View>
//some component here
</View>
</ThemeProvider>
</View>
)
}
我正在尝试为 Page 组件编写一个快照测试,如下所示:
const tree = renderer.create(<Page/>);
expect(tree.toJSON()).toMatchSnapshot();
但我收到以下错误:
控制台错误 node_modules/react-test-renderer/cjs/react-test-renderer.development.js:10695 组件中出现上述错误: 在页面
我尝试通过如下方式包装 Page 本身来测试组件:
const tree = renderer.create(
<ThemeProvider
<Page/>
</ThemeProvider>);
expect(tree.toJSON()).toMatchSnapshot();
但这并没有解决问题。我无法找到一种方法来模拟本身包含 ThemeProvider 的组件。如果我从组件中删除 ThemeProvider,测试会像魅力一样通过。
任何帮助将不胜感激。 谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。