对于React,我使用Shallow Rendering种技术对React组件进行单元测试.我可以在React Native中做类似的事情吗?

我有followed the instructions to set up Jest个,但找不到任何关于测试我的组件的文档.我想用React Native做完整的TDD,就像React一样.

推荐答案

我想enzyme是你想要的.

它为您提供了一个shallow函数,允许您进行肤浅的比较(如您所愿).

Enzyme 可以与所有受欢迎的测试 run 者一起使用(如摩卡、jest、因果报应等).完整的列表可以在on the library's github page中找到.

例子:

import {shallow} from 'enzyme';

describe('<MyComponent />', () => {
  it('should render three <Foo /> components', () => {
    const wrapper = shallow(<MyComponent />);
    expect(wrapper.find(Foo)).to.have.length(3);
  });
});

进一步阅读,你可以看看Enzyme 的Shallow Rendering APIdocs一般.

React-native相关问答推荐

Appcenter构建失败错误号::EEXIST -文件存在于syserr_fail2_in

如何在底部标签导航中添加顶部标签

到达安装依赖项时 EAS 构建错误

错误:图片:找不到 ID 为1的assets资源 .请判断图像源或打包器

如何在 React Native 中正确地将组件导入到我的导航器中?

如何在 react-native 中使用 Animated 制作 svg 动画

TabNavigator 中的 React Navigation 传递props

在 iOS 模拟器中运行 React Native 应用程序时找不到 UMModuleRegistryAdapter.h

React-Native 构建失败的应用程序:mergeDebugAssets

React Native 中的全屏图像

java.lang.UnsatisfiedLinkError:找不到要加载的 DSO:libfbjni.so 结果:0

ScrollView visible Scroll Bar

react-native fetch 和基本身份验证

有react-native复选框的例子吗?

React Native 中使用了哪些维度单位?

如何在 Expo 和 React Native 中使用绝对路径导入?

在 react-native 中设置动态 'initialRouteName'

React Native - __DEV__ 未定义

设置 react-native 元素时使用特定的包名称

react-native 开始给出 Invalid 正则表达式无效错误