/ React Native / Phase 7 Phase 7 Days 35-39
Testing, Debugging & Mobile Security Unit, component, integration, E2E, native diagnostics, secrets, storage, and hostile-input thinking
Phase Goal Prove critical behavior across platforms and protect user data against realistic mobile threats.
Day 35: Unit & Component Tests
Behavior-first test boundaries
Jest preset, pure logic, timers, and deterministic tests Build the mental model for Jest preset, pure logic, timers, and deterministic tests Implement Jest preset, pure logic, timers, and deterministic tests in a small typed example Apply Jest preset, pure logic, timers, and deterministic tests to a realistic mobile product flow Debug the platform-specific failure modes of Jest preset, pure logic, timers, and deterministic tests
React Native Testing Library queries and user events
Accessibility assertions and avoiding implementation coupling
Day 36: Integration & End-to-End Mobile Tests
Navigation, Redux, network, and persistence integration harness Build the mental model for Navigation, Redux, network, and persistence integration harness Implement Navigation, Redux, network, and persistence integration harness in a small typed example Apply Navigation, Redux, network, and persistence integration harness to a realistic mobile product flow Debug the platform-specific failure modes of Navigation, Redux, network, and persistence integration harness
Mock server boundaries and failure scenarios
Maestro/Detox E2E trade-offs and stable selectors
Device matrix, permissions, deep links, and flaky-test control Build the mental model for Device matrix, permissions, deep links, and flaky-test control Implement Device matrix, permissions, deep links, and flaky-test control in a small typed example Apply Device matrix, permissions, deep links, and flaky-test control to a realistic mobile product flow Debug the platform-specific failure modes of Device matrix, permissions, deep links, and flaky-test control
Day 37: Debugging Native-Shaped Failures
DevTools, Metro, source maps, network inspection, and logs Build the mental model for DevTools, Metro, source maps, network inspection, and logs Implement DevTools, Metro, source maps, network inspection, and logs in a small typed example Apply DevTools, Metro, source maps, network inspection, and logs to a realistic mobile product flow Debug the platform-specific failure modes of DevTools, Metro, source maps, network inspection, and logs
Android logcat, iOS console, crash symbols, and minimal reproductions Build the mental model for Android logcat, iOS console, crash symbols, and minimal reproductions Implement Android logcat, iOS console, crash symbols, and minimal reproductions in a small typed example Apply Android logcat, iOS console, crash symbols, and minimal reproductions to a realistic mobile product flow Debug the platform-specific failure modes of Android logcat, iOS console, crash symbols, and minimal reproductions
Version mismatch, caches, native rebuilds, and expo-doctor Build the mental model for Version mismatch, caches, native rebuilds, and expo-doctor Implement Version mismatch, caches, native rebuilds, and expo-doctor in a small typed example Apply Version mismatch, caches, native rebuilds, and expo-doctor to a realistic mobile product flow Debug the platform-specific failure modes of Version mismatch, caches, native rebuilds, and expo-doctor
Platform-only and release-only failure workflow
Day 38: Mobile Security & Privacy
Threat model, untrusted devices, and client limitations
SecureStore, tokens, biometrics, screenshots, and clipboard risks Build the mental model for SecureStore, tokens, biometrics, screenshots, and clipboard risks Implement SecureStore, tokens, biometrics, screenshots, and clipboard risks in a small typed example Apply SecureStore, tokens, biometrics, screenshots, and clipboard risks to a realistic mobile product flow Debug the platform-specific failure modes of SecureStore, tokens, biometrics, screenshots, and clipboard risks
TLS, certificate pinning trade-offs, deep-link validation, and WebView danger Build the mental model for TLS, certificate pinning trade-offs, deep-link validation, and WebView danger Implement TLS, certificate pinning trade-offs, deep-link validation, and WebView danger in a small typed example Apply TLS, certificate pinning trade-offs, deep-link validation, and WebView danger to a realistic mobile product flow Debug the platform-specific failure modes of TLS, certificate pinning trade-offs, deep-link validation, and WebView danger
PII minimization, log redaction, and dependency review
Day 39: Mini Project — Youth Club Consent Desk
Minimal participant-consent metadata and authenticated staff session
Background redaction, timeout, screenshot, clipboard, and deep-link policy Build the mental model for Background redaction, timeout, screenshot, clipboard, and deep-link policy Implement Background redaction, timeout, screenshot, clipboard, and deep-link policy in a small typed example Apply Background redaction, timeout, screenshot, clipboard, and deep-link policy to a realistic mobile product flow Debug the platform-specific failure modes of Background redaction, timeout, screenshot, clipboard, and deep-link policy
Unit, component, integration, E2E, and native diagnostic proof Build the mental model for Unit, component, integration, E2E, and native diagnostic proof Implement Unit, component, integration, E2E, and native diagnostic proof in a small typed example Apply Unit, component, integration, E2E, and native diagnostic proof to a realistic mobile product flow Debug the platform-specific failure modes of Unit, component, integration, E2E, and native diagnostic proof
Project requirements, constraints & review Build the mental model for Project constraints, threat model, transfer attack, and limitation statement Implement Project constraints, threat model, transfer attack, and limitation statement in a small typed example Apply Project constraints, threat model, transfer attack, and limitation statement to a realistic mobile product flow Debug the platform-specific failure modes of Project constraints, threat model, transfer attack, and limitation statement
Youth Club Consent Desk Build a staff-facing consent-status app that answers only whether a participant may join a selected activity. Store the minimum metadata, gate staff access with platform authentication, redact sensitive screens when backgrounded, and state clearly what a rooted or jailbroken device can still expose.
SecureStore-backed session material, biometric/passcode policy, timeout, redaction, and safe sign-out Validated deep links, redacted logs, hostile server payload handling, and privacy-safe analytics boundaries Layered tests covering expiry, denial, backgrounding, malformed links, offline state, and release-only behavior Transfer: handle a lost-device report by revoking the mock session and proving cached private views are inaccessibleAfter this phase, you'll be able to:
Behavior-first test boundaries Jest preset, pure logic, timers, and deterministic tests React Native Testing Library queries and user events Accessibility assertions and avoiding implementation coupling Navigation, Redux, network, and persistence integration harness Mock server boundaries and failure scenarios Maestro/Detox E2E trade-offs and stable selectors Device matrix, permissions, deep links, and flaky-test control You can apply Phase 7 skills in a tested mobile project on Android and iOS.