Pruebas de IU de comportamiento
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Las pruebas de IU de comportamiento son pruebas que analizan la jerarquía de la IU para realizar aserciones sobre las propiedades de los elementos de la IU.
Frameworks de Jetpack
Jetpack incluye varios frameworks que proporcionan APIs para escribir pruebas de IU:
- El framework de pruebas Espresso (Android 4.0.1, nivel de API 14 o superior) proporciona APIs para escribir pruebas de IU que simulan las interacciones del usuario con Views en una sola app de destino. Un beneficio clave de usar Espresso es que proporciona la sincronización automática de las acciones de prueba con la IU de la app en cuestión. Espresso detecta cuando el subproceso principal está inactivo, de modo que puede ejecutar los comandos de prueba en el momento adecuado y mejorar la confiabilidad de las pruebas.
- Jetpack Compose (Android 5.0, nivel de API 21 o versiones posteriores) proporciona un conjunto de APIs de prueba para iniciar y, luego, interactuar con pantallas y componentes de Compose. Las interacciones con los elementos de Compose se sincronizan con las pruebas y tienen control completo sobre el tiempo, las animaciones y las recomposiciones.
- UI Automator (Android 4.3, nivel de API 18 o versiones posteriores) es un framework de pruebas de IU adecuado para pruebas de IU funcionales entre apps en el sistema y en apps instaladas. Las APIs de UI Automator te permiten realizar operaciones como abrir el menú Configuración o el selector de aplicaciones en un dispositivo de prueba.
- Robolectric (Android 4.1, nivel de API 16 o superior) te permite crear pruebas locales que se ejecutan en tu estación de trabajo o entorno de integración continua en una JVM normal, en lugar de en un emulador o dispositivo. Puede usar las APIs de prueba de Espresso o Compose para interactuar con los componentes de la IU.
Recursos adicionales
Para obtener más información sobre la creación de pruebas de IU, consulta los siguientes recursos.
Documentación
Codelabs
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-07-27 (UTC)"],[],[],null,["# Behavior UI Tests\n\nBehavior UI tests are tests that analyze the UI hierarchy to make assertions\non the properties of the UI elements.\n\nJetpack frameworks\n------------------\n\nJetpack includes various frameworks that provide APIs for writing UI tests:\n\n- The **[Espresso testing framework](/training/testing/espresso)** (Android 4.0.1, API level 14 or higher) provides APIs for writing UI tests to simulate user interactions with *Views* within a single target app. A key benefit of using Espresso is that it provides automatic synchronization of test actions with the UI of the app you are testing. Espresso detects when the main thread is idle, so it is able to run your test commands at the appropriate time, improving the reliability of your tests.\n- **[Jetpack Compose](/jetpack/compose)** (Android 5.0, API level 21 or higher) provides a set of [*testing APIs*](/jetpack/compose/testing) to launch and interact with Compose screens and components. Interactions with Compose elements are synchronized with tests and have complete control over time, animations and recompositions.\n- **[UI Automator](/training/testing/ui-automator)** (Android 4.3, API level 18 or higher) is a UI testing framework suitable for cross-app functional UI testing across system and installed apps. The UI Automator APIs allows you to perform operations such as opening the Settings menu or the app launcher on a test device.\n- **[Robolectric](/training/testing/local-tests/robolectric)** (Android 4.1, API level 16 or higher) lets you create *local* tests that run on your workstation or continuous integration environment in a regular JVM, instead of on an emulator or device. It can use Espresso or Compose testing APIs to interact with UI components.\n\nAdditional resources\n--------------------\n\nFor more information about creating UI tests, consult the following resources.\n\n### Documentation\n\n- [Build instrumented tests](/training/testing/instrumented-tests)\n- [Espresso](/training/testing/espresso)\n- [Compose Testing](/jetpack/compose/testing)\n\n### Codelabs\n\n- [Introduction to Test Doubles and Dependency Injection](/codelabs/advanced-android-kotlin-training-testing-test-doubles)"]]