Android soporta varios tipos de pruebas — pruebas unitarias (lógica, se ejecutan en la JVM), pruebas instrumentadas (se ejecutan en un dispositivo/emulador, incluyendo pruebas de UI con Espresso), y más. Una buena estrategia de pruebas mejora la confiabilidad y la confianza.
Tipos de pruebas
UNIT TESTS (local, on the JVM) → test logic (ViewModels, repositories, utilities):
→ fast (no device); use JUnit, Mockito/MockK (mocking), no Android framework needed
→ for business logic, data processing, ViewModels
INSTRUMENTED TESTS (on a device/emulator) → test code needing the Android framework:
→ UI tests (ESPRESSO — interact with and verify the UI), integration tests
→ slower (real device/emulator) but test real Android behavior
