[5팀 이지훈] Chapter 3-2. 프런트엔드 테스트 코드#22
Open
JiHoon-0330 wants to merge 23 commits intohanghae-plus:mainfrom
Open
[5팀 이지훈] Chapter 3-2. 프런트엔드 테스트 코드#22JiHoon-0330 wants to merge 23 commits intohanghae-plus:mainfrom
JiHoon-0330 wants to merge 23 commits intohanghae-plus:mainfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
8주차 과제 체크포인트
기본 과제
필수
선택
심화 과제
각 팀원들의 테스트 전략은?
대부분 통합 테스트를 활용하는 트로피 전략을 선택했습니다.
합의된 테스트 전략과 그 이유는 무엇인가요?
사용자의 경험을 테스트 하기 위해선 통합 테스트와 e2e 테스트가 적합하다고 판단했습니다.
e2e 테스트의 경우 비용이 크기 때문에 통합 테스트를 많이 활용하는 것이 적절한 방법이라 합의가 되었습니다.
추가로 작성된 테스트 코드는 어떤 것들이 있나요?
단위테스트
통합 테스트
e2e 테스트
과제 셀프회고
이번주 발제를 들으면서 과거 스냅샷 테스트와 시각적 회귀 테스트를 시도했던 경험이 떠올랐다. 그 당시엔 테스트를 작성해본 경험이 없었고 테스트를 사용하는 많은 회사에서 그런 종류의 테스트를 하는 줄 알았다. 불편한 점이 있어도 원래 그런거 아닐까? 라는 생각을 했던 것 같다. 그러다 결국 테스트를 제거했었다. 상황에 알맞은 기술이 존재한다는 것과 기술의 장단점을 고려하지 못한 경험은 코드를 따라 쳐봤다 수준의 경험이었고, 기억속에서 잊혀졌다. 과거의 이런 경험들을 더 값진 경험으로 만들 수 있는 것이 항해를 하면서 좋은 점이라 생각한다.
기술적 성장
코드 품질
단위 테스트, 통합(e2e) 테스트의 이점을 활용할 수 있는 구조를 만들고 싶은데, 아직은 익숙하지 않은 것 같다. 버튼 컴포넌트를 예시로 들면, 단위 테스트를 할 때 onClick 이라는 속성에 전달되는 함수를 모킹하고 클릭시 함수가 호출 되었는지 확인 할 수 있다. 통합 테스트에선 버튼을 클릭했을 때 폼 제출과 같이 의도한 동작이 정상적으로 실행 되는지 확인 할 수 있다. 이외 캘린더와 같은 UI 를 테스트한다 가정하면, 단위 테스트는 각 월마다 알맞은 날짜를 생성하는지 통합 테스트에서는 요일이 렌더링 되는지, 1-31 까지 날짜가 표시되는지 확인하는 방법을 사용했다.
학습 효과 분석
과제 피드백
개인적인 경험으론 다른 곳에선 테스트를 작성한다던데 라는 생각으로 접근 했을 때 제대로 된 학습을 경험하지 못했었다. 테스트 챕터를 통해 테스트의 종류와 장단점, 내 상황에 알맞은 테스트는 어떤 것일까를 고민하는 시간을 가질 수 있어서 좋았습니다.
리뷰 받고 싶은 내용
보편적으로 접근성을 활용해 테스트를 진행하는 것이 권장되는 방식이라고 이해했습니다. 하지만 테스트를 직접 작성하면서 접근성을 활용하는 것이 마냥 쉽지만은 않다고 느껴지는데, 그동안 테스트를 작성하면서 이때는 testId 를 사용해야 했다 라는 상황이 있으셨는지 궁금합니다.