尝试为onChange事件运行以下测试。该测试目前通过了,但不影响其覆盖范围。这意味着我没有正确地打电话。 这是我要测试的onChange事件:
<Modal isOpen={this.state.quickFilterModalOpen} style={descriptionModalStyle}>
<label>City</label>
<input id='city-label-id' onChange={(e) => {this.setState({advancedFilter: {...this.state.advancedFilter, City: e.target.value}})}} value={this.state.advancedFilter.City}/>
这是我的测试文件: 测试通过,但覆盖范围不受影响
it("Test onChange event on City - Label", () => {
baseProps.onChange.mockClear();
wrapper.find('Datasubjects').setState({
advancedFilter:{
City:'test-city'
}
});
wrapper.update()
wrapper.find('Datasubjects').props().onChange({City:{target:{value:'test'}}})
expect(wrapper.find('Datasubjects').state("advancedFilter").City).toEqual('test-city');
})
我还试图找到输入ID:
//wrapper.find('input[id="city-label-id"]').simulate('change',{City:{target: {value:'test'}}} )
但是找不到节点,有帮助吗?