我想使用用户事件测试库测试我的react select组件(https://testing-library.com/docs/ecosystem-user-event/)
我只想测试是否选择打开菜单(如果单击(。
这是我的代码:
如果我使用fireEvent,它可以工作,但是如果我使用useEvent,它不工作。。
test('should open select onclick', () => {
const wrapper = render(
<ReactSelect
className="select"
classNamePrefix="select"
options={[{ value: '0', label: 'Label' }]}
/>,
);
expect(
wrapper.container.getElementsByClassName('select__option').length,
).toBe(0);
fireEvent(wrapper.container.querySelector('input')); //WORKING
userEvent.click(wrapper.container.querySelector('input')); // NOT WORKING
expect(
wrapper.container.getElementsByClassName('select__option').length,
).toBe(1);
});
我终于将Jest升级到了v26,它开始工作了。