React-5 测试模拟用户事件

598 阅读1分钟

常用库

  • @testing-library/user-event(推荐)
  • Firing Events

@testing-library/user-event

@testing-library/user-event 提供的模拟事件的方法,相对于Firing Event,这种方法是模拟用户浏览器时会发生的真正的交互行为,以用户输入为例 @testing-library/user-event

userEvent.type(getByLabelText(/username/i),'a');
userEvent.clear(getByLabelText(/username/i));

Firing Event

fireEvent.change(getByLabelText(/username/i),{ target: {value: 'a'}})
            ↓              ↓                          ↓
            eventName    HTMLElement            eventProperties

Firing Event的缺点

1.不知道事件的来源

2.第二个参数用户并不关心