gpt4 book ai didi

javascript - 在单元测试中覆盖匿名函数参数

转载 作者:行者123 更新时间:2023-12-04 16:09:38 26 4
gpt4 key购买 nike

我在代码中有多种情况,我们在创建对象时将函数作为参数传递(例如在 onPress 中):

<Touchable
onPress={() => Linking.openURL(formatUrl(url))}
noContainer={true}>
{children}
</Touchable>

归根结底,这是渲染更大组件中的一个片段。因为它实际上不是组件的方法,所以我对在这里测试它并不特别感兴趣——如果需要,它将作为另一个组件的一部分进行测试。 Code Coverage但是,代码覆盖率报告返回并指示该函数未被覆盖。

有没有办法满足这种覆盖率——要么​​通过测试这个函数,要么忽略所有以这种方式传递的函数(匿名,作为参数)?

最佳答案

假设您使用的是 Jest,您可以将 Jest 模拟设置为调用它接收的参数,因此:

const componentProps = {
onPress: jest.fn(func => func());
}

因此,在这种情况下,模拟的 onPress 函数将接收您的匿名函数并调用它。覆盖将显示调用了匿名函数。

希望对您有所帮助:)

关于javascript - 在单元测试中覆盖匿名函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45036345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com