디자인시스템의 테스트 커버리지를 올리는 중입니다. 프로젝트는 React, jest, testing-library를 사용하고 있구요. 테스팅 자체에도 능숙한 편이 아닌 점도 있지만, 사용자의 모든 인터렉션과 그에 대한 DOM 변경을 테스트 환경 안에서만 테스트 하기에 난감한 점들을 발견하였어요. 하나는 BottomSheet를 드래그하여 일정거리만큼 y로 이동했을 때, onClose() 함수를 호출해야하는데, jsdom에서 drag 이벤트가 발생하지 않았죠. 또 하나는 toast message인데요, 3초간 보여주었다가 사라지는 애니메이션을 가지고 있어요. 그런데 테스트 환경에서는 3초 후에도 요소가 유지되어 테스트가 실패합니다. 두 요소 모두 Dom의 움직임이 적용되어 있다는 공통점이 있네요! 두가지 케이스에 대해 어떻게 처리해야할지 고민입니다 😔
・댓글 1