가수면

user-event 본문

React/테스팅 라이브러리

user-event

니비앙 2023. 6. 23. 10:03

fireEvent도 좋지만 공식 문서에서는 user-event를 더 추천.

 

npm install @testing-library/user-event@^14

fireEvent vs user-event

fireEvent

DOM 이벤트를 디스패치 (컴퓨터 이벤트)

user-event

모든 상호작용을 시뮬레이션 (사용자 상호 작용 이벤트)

기본 형태

import 시 구조 분해하지 않고, async / await를 사용해야 한다.

import userEvent from '@testing-library/user-event'

// inlining
test('trigger some awesome feature when clicking the button', async () => {
  const user = userEvent.setup()

  render(<MyComponent />)

  await user.click(screen.getByRole('button', {name: /click me!/i})) // hover, unhover 등등

})

"not wrapped in act(...)" 오류가 발생할 경우

npm install @testing-library/react@14 @testing-library/user-event@14 @testing-library/dom@9

'React > 테스팅 라이브러리' 카테고리의 다른 글

msw  (0) 2023.06.30
테스트 종료와 비동기 업데이트 충돌 오류  (0) 2023.06.27
테스팅 라이브러리 심화  (0) 2023.06.26
테스팅 쿼리  (0) 2023.06.22
테스팅 라이브러리 기본 개념  (0) 2023.06.21
Comments