如何使用JEST测试更改的REACT选择器值

时间:2019-02-11 10:08:55

标签: javascript unit-testing jestjs enzyme

我想测试/模拟我在React Component中选择器的值更改。这应该是浅层的还是镶嵌的?有什么想法。

我正在使用React16并挂载组件,找到它并想​​要更改值:

      element.simulate('change' , {
        target: {
            value: 'something'
        }
       });

并检查其值是否实际上已更改...

main.js:

         handleChange = (event) => { 
         ................ something
       }

 render() {
    return (
    <Select
            data-test="players_field"
            value={''}
            onChange={this.handleChange}
            inputProps={{
              name: 'players'
            }}
          >
              <MenuItem disabled>1</MenuItem>
              <MenuItem value="2">2</MenuItem>
              <MenuItem value="3">3</MenuItem>
              <MenuItem value="4">4</MenuItem>
              <MenuItem value="5">5</MenuItem>
    </Select>
)}

我希望将选择器的值更改为MenuItems之一(无论哪个),并测试选择器是否实际上通过JEST酶更改了值/文本

main.test.js

const wrapper = mount(<Doba />);
const element = wrapper.find("[data-test='players_field']");
element.simulate('change' , {
        target: {
            value: 'Players ON the court'
        }
});

0 个答案:

没有答案