하나의 component에 대해서만 테스트한다. 즉, 다른 component와 interaction되는 것을 테스트하는 것이 아니므로 props를 임의값으로 넣어서 테스트한다.integration test는 연결된 컴포넌트간의 동작에 대해서 테스트한다.Todo.js,
HTTP Request로 데이터를 받아오는 경우, async로 테스트를 해야한다. 실제 데이터로 테스트할 수도 있고, mockup을 만들어서 테스트할 수도 있다.random user를 axios.get 한다.data-testid로 dynamic testid를 만든다.
아래 3가지는 cra를 하면 기본으로 설치됨각 컴포넌트 directory내에 \_\_test\_\_ directory를 생성\_\_test\_\_/ComponentName.test.js 생성render : 테스트할 컴포넌트를 랜더링 (Render a component
React 17 버전까지는 render 함수를 사용하였습니다.아래와 같이 test를 작성하면 DOM이 정상적으로 교체되었습니다.React 18 부터는 createRoot를 사용해야 합니다.다만 이때는 act 함수도 함께 사용해주어야 정상적으로 dom이 교체가 됩니다.a