我正在使用Jest和酶来测试一些React组件(使用TypeScript编写)。我的旧方法是使用酶的.simulate()函数来模拟点击,但为了支持使用实例属性函数(即只使用组件的onClick()属性),这种方法被弃用了。但是,我不确定如何准确地直接调用onClick()函数。下面是我的代码: // Get the onClick function
const buttonOnClick = wrapper.find('#diffpicker-button
在模拟用户与酶的交互后,我正在使用storybook可视化React组件的更改。作为一个小示例,我想要一个故事显示一个组件后,它的一个按钮已被单击。我遇到的问题是组件的构造函数被调用了两次:一次是组件被酶挂载的时候,另一次是storybook显示组件的时候。这会将组件恢复到默认状态,因此在模拟用户交互之后所做的任何更改都会丢失。在故事加载之后,按钮组件处于“未点击”状态,即使点击是用酶模拟的:
import React from