가수면
user-event 본문
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