What problem does it solve?
Espresso View UI tests often fail with missing/ambiguous matchers, ineffective actions, or flaky timing when dialogs, RecyclerView items, intents, or background work are involved.
Core Features & Use Cases
- Find, act, and assert with the correct Espresso primitives: use
onView(matcher).perform(action).check(matches(...)) with the proper matcher/action/assertion catalog for Android Views.
- Handle the common failure traps: apply
inRoot(isDialog()) / inRoot(isPlatformPopup()) for dialogs and popups, select the correct RecyclerView and AdapterView interaction patterns (RecyclerViewActions, onData), and stub/verify intents with Intents lifecycle.
- Make async work deterministic: register and manage
IdlingResource (including correct implementation usage), configure idling timeouts, and avoid Thread.sleep.
Quick Start
Ask the AI to generate an Espresso 3.7.0 instrumentation test for an Android Views screen that clicks a dialog button, interacts with a RecyclerView row, stubs an outbound camera intent, and uses an IdlingResource to wait for non-UI async work.