gpt4 book ai didi

jestjs - 如何使用 enzyme 测试事件处理程序

转载 作者:行者123 更新时间:2023-12-04 20:33:24 24 4
gpt4 key购买 nike

我们如何使用 enzyme 的浅渲染测试点击处理程序

class Example extends React.Component {
render() {
const {
message
} = this.props
return <Alert key={message.id} bsStyle={message.state} onDismiss={()=>this.handleAlertDismiss(message.id)}>{message.text}</Alert>
}
handleAlertDismiss = (id) = > {
console.log(id)
}
}

我们如何测试 onDismiss添加到 Alert 的函数成分。

最佳答案

创建组件并像这样调用dismiss函数。

const log = jest.fn();
global.console = {log}
example = shallow(<Example message={{id: 'test'}}/>);
example.props('onDismiss')() //just find the dismiss prop and call the function
expect(log).toHaveBeenCalledWith('test')

你的例子的问题是没有什么可测试的。使其与您的 console.log 一起使用我 mock 的例子 console.log使用 spy ,可以对其进行测试以检查是否使用正确的参数调用了它。

关于jestjs - 如何使用 enzyme 测试事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40598975/

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