web-dev-qa-db-ja.com

onClickが酵素で機能しない場合のシミュレーション

これはキャンセルボタンです

<div className="cancelFileBtn" onClick={this.props.cancelFileSending}>

私はそのクリックをシミュレートする必要があります、私は次のテストを試しました

wrapper.find('.cancelFileBtn').simulate('click');

しかし、クリック関数はまだ定義されていません...他に何かを見逃しましたか?シミュレーションで存在する場合、誰かが変更について言及できれば非常に役立ちます

<SendMessageButton onClick={this.props.handleClickSendMessage} loadingFile={this.props.loadingFile}/>
14
Thomas John

より多くのコードを見なければ、多くを伝えることができません、これが役立つことを願っています:

const wrapper = mount(<Component />);
const cancelBtn = wrapper.find('.cancelFileBtn');

// Test that the button is truthy
expect(cancelBtn).to.have.length(1);

// Simulation
cancelBtn.simulate('click');
// or
cancelBtn.props().onClick();

// Test the output
expect(...).to.equal(...);
7
Jee Mok