What problem does it solve?
It helps you decide what to test in an Android codebase so your suite covers high-value state changes and avoids low-value framework and library verification.
Core Features & Use Cases
- State coverage mapping: Guides decisions across UI-observable state, ViewModel/in-memory state, persisted state (DB/DataStore/files), other system state, and error/edge cases.
- Explicit avoid-list guardrails: Prevents prioritizing unit tests for framework entry points like Activities, Fragments, and Services, and avoids testing third-party or framework internals.
- Edge-case mining checklist: Ensures you review boundary conditions, malformed inputs, storage/network failures, concurrency, process death/restoration, and configuration changes.
- Decision matrix: Recommends test types and locations (small unit vs small/medium instrumented vs big UI) based on what the code touches.
Quick Start
Use the choosing-what-to-test skill to get a tailored testing plan for the specific module you are reviewing, including what state categories to cover, what to avoid, and which edge cases to include.