测试对onclick的反应

时间:2019-07-14 18:33:02

标签: reactjs onclick jestjs enzyme

我有一个反应组件'BaseComponent',它的输入类型文本带有按钮,为此提供了一个onclick处理程序。

<input 
    name="customer" 
    type="text"
    value={this.state.parameter1} 
    onChange={this.handleChange}
/>
<button onClick={this.handleSubmit}></button>

构造函数:

this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);

handleChange是:

handleChange(event) {
    this.setState({parameter1: event.target.value});
}

handleSubmit是:

handleSubmit(event) {
    event.preventDefault();
    this.setState({
    //setting parameters- eg: this.state.parameter2=
    })

//api call - using parameter1
}

从输入类型的文本读取数据后,有api调用。根据api响应,将调用其他两个组件OtherComponent1OtherComponent2。 最好的测试方法是什么?

到目前为止,我正在通过以下方式测试baseComponent:

const baseComponentData = shallow(<BaseComponent />);
    baseComponentData.setState({ property1: true });

然后检查

baseComponentData.html().

我如何buttonOnclick处理数据? (意味着handleSubmit需要被调用)
我嘲笑buttonOnclock之后,我认为可以使用jest.mock嘲笑api。

有什么建议吗?

0 个答案:

没有答案