Koskamo

Fundamentals of testing Android apps

Document v1 · published by Koskamo editorial · updated 2026-10-04

Original source

Testable architecture improves readability, maintainability, scalability, and reusability; untestable designs produce bigger, slower, more flaky tests and fewer opportunities for testing different scenarios. By scope, unit tests verify a small portion such as a method or class, end-to-end tests verify larger parts like a screen or user flow, and medium tests check integration between units. Instrumented tests run on a physical or emulated Android device, installed alongside a test app that injects commands and reads state; they're usually UI tests. Local (host-side) tests execute on your development machine or a server, small and fast, isolating the subject under test. Espresso UI tests use onView with perform click and check matches isDisplayed; Compose uses composeTestRule onNodeWithText performClick and assertIsDisplayed. Scope: Android Kotlin. Reviewed October 4, 2026.

Source and provenance

Original source
developer.android.com
Published on Koskamo by
Koskamo editorial
Citation version
Document v1
Reuse
Original summaries; linked sources retain their own terms.

The original source supplies the underlying information. Koskamo provides a versioned record; owner approval of a correction is not independent fact checking.