RESEARCH
QA 테스트 전략
테스트 피라미드
- Unit 50%: Orchestrator 로직, Smart Split, Context 룰, Dash 파싱 (JUnit5, MockK, Turbine)
- Integration 30%: Room 마이그레이션, DataStore, API 통합 (Robolectric, MockWebServer)
- UI 15%: Compose UI, Dash Skin, Space 레이아웃, 테마 (ComposeTestRule, Paparazzi)
- E2E 5%: 전체 시나리오 (UI Automator, Maestro)
스크린샷 테스트: Paparazzi (Phase 1) -> Roborazzi (Phase 2+)
- Dash Skin 3단계 (mini/standard/expanded) x 테마 (dark/light) = 6장/Dash
- Fused Skin, Orchestrator 제안 카드
런처 특화 테스트
- 홈 버튼 1/2탭, 앱 전환 후 복귀, 다른 런처에서 전환
- Space별 배경화면, Portrait/Landscape 회전
- 저전력 모드, 메모리 부족(LMK), 시간대 변경
CI/CD: GitHub Actions
- PR: Lint + Unit (2분) -> Screenshot (3분) -> Instrumented (8분)
- main merge: Build Release -> Upload Artifact
- Weekly: Macrobenchmark (15분)
성능 예산
- Cold Startup: < 800ms TTID
- Space 스와이프: 99th < 16ms (60fps)
- Dash Morphing: 90th < 8ms
- 메모리 (5 Dash): < 150MB RSS