프로젝트 소개
Detox는 주로 Android 및 iOS 플랫폼의 React Native 앱을 대상으로 설계된 오픈 소스 그레이 박스 엔드투엔드 테스트 및 자동화 프레임워크입니다. 전통적인 블랙 박스 테스트 도구와 달리, Detox는 앱의 내부 상태와 동기화하여 비동기 작업을 실시간으로 모니터링함으로써 테스트의 불안정성(flakiness)을 줄입니다. 테스트는 최신 async-await API를 사용하는 JavaScript로 작성되어 디버깅과 가독성이 뛰어나며, 예를 들어 텍스트 입력이나 버튼 탭과 같은 사용자 동작을 시뮬레이션한 후 UI 변경 사항을 검증할 수 있습니다.
주요 기능으로는 크로스 플랫폼 지원, 레이스 컨디션을 방지하기 위한 자동 동기화, 인기 있는 테스트 러너(특히 Jest)와의 호환성, 그리고 Travis CI, CircleCI 또는 Jenkins와 같은 CI/CD 환경으로의 원활한 통합이 포함됩니다. Detox는 실제 기기나 시뮬레이터에서 테스트를 실행하여 배포에 대한 신뢰도를 높입니다. 공식적으로는 v0.77.x에서 v0.84.x까지의 React Native 버전(New Architecture 포함)을 지원하며, 최신 버전이나 이전 버전에서도 작동할 수 있으나 보장되지는 않습니다.
이 프로젝트는 GitHub 이슈와 Discord를 통해 커뮤니티 기여를 권장하며, 시작 가이드, 설계 원칙, 기여 지침을 포함한 광범위한 문서를 제공합니다. Detox는 MIT 라이선스 하에 출시되었으며, 브라질 포르투갈어 튜토리얼과 같이 커뮤니티에서 기여한 비영어권 리소스를 포함하고 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.