React Native Workflow 문서가 RN 말고도 실제 전반적인 업무를 너무 잘 설명해주고 있다. 틈날때마다 가서 읽자.
유닛테스트와 TDD (웹개발자를 위한 테스트 마스터 클래스🍯)
TDD와 리액트 테스트 (프론트엔드개발자를 위한 테스트 마스터 클래스 🍯)
Test
정적분석(린터, 타입체커 사용)
non Component
단위테스트, 통합테스트 - 필요에 따라 mocking
Component
- 유저의 행동에 맞춰 코드 작성(e.g. Textchange, Click FireEvent. props,state 변화따위 체크 X)
- 필요에 따라 Snapshot testing. 이게 옳은 스냅샷인지 의도한것인지 판단하기 힘들다는 단점이 있으므로 한번 스냅샷 찍을때 신중히 검토하도록 하자.
E2E (End-to-End) Test
- 실제로 동작하는지 화면단에서 테스트. 테스트 결과가 flaky 하지 않은 말 그대로 유저의 현실을 테스트 하는 것
- 정말 중요한 vital parts 인 authentication flow, core functionalities, payments 등에서 사용하고 non-vital parts 는 그냥 JS테스트로 빠르게 처리할 것.
- 가장 유명한 라이브러리로 Detox(RN 에 잘 맞음), 그 외로는 Android, IOS 용으로 Appium 이 있음.