Jest.js 如何为React Native Switch的value prop编写单元测试

eqoofvh9  于 2023-08-01  发布在  Jest
关注(0)|答案(1)|浏览(113)

使用React Native Switch我想为value prop编写一个单元测试(使用jest和testing-library/react-native)。但其props中没有value
我的用例是,当页面加载时,Switch将有一个默认值。但是我找不到一种方法来检查开关值。有没有一个正确的方法来检查它的value是真还是假?x1c 0d1x的数据
附上的图片是Switch的 prop 列表

iyfjxgzm

iyfjxgzm1#

你可以像这样检查prop的值,包括当你改变它时它是否工作:

expect(screen.getByRole('switch').props.value).toBe(true);

fireEvent(screen.getByRole('switch'), 'onValueChange');

expect(screen.getByRole('switch').props.value).toBe(false);

字符串
假设你的组件看起来像这样:

<Switch
      trackColor={{true: something, false:somethingElse}}
      thumbColor={someColor}
      ios_backgroundColor={somethingSomething}
      onValueChange={toggleValue}
      value={value}
    />


值为const [value, toggleValue] = useState(false);。让我知道,如果这不适合你,也请添加组件和测试,你现在有。如果看不到这一点,很难说出了什么问题

相关问题