Journeys for Android Studio aprovecha las capacidades de visión y razonamiento de la IA para navegar y probar tu app según tus instrucciones en lenguaje natural. Tu conjunto de instrucciones, llamado recorrido, se convierte en acciones que la IA realiza en tu app. Además, puedes escribir y describir aserciones más complejas, que la IA evalúa en función de lo que ve en el dispositivo.
Además, como Gemini razona sobre qué acciones realizar para satisfacer los objetivos, los recorridos son más resistentes a los cambios sutiles en el diseño o el comportamiento de tu app, lo que genera menos pruebas inestables cuando se ejecutan en diferentes versiones de tu app y diferentes configuraciones de dispositivos.
Puedes escribir y ejecutar recorridos directamente desde Android Studio o desde la línea de comandos en cualquier dispositivo local o remoto con Android. El IDE proporciona una nueva experiencia de editor para crear recorridos, así como resultados enriquecidos que te ayudan a comprender mejor el razonamiento de Gemini y la ejecución de tu recorrido.
Escribe un viaje
Android Studio proporciona una plantilla de archivo y una nueva experiencia de editor que facilita la creación y edición de recorridos. Los viajes se escriben con la sintaxis XML para organizar la descripción y los pasos del viaje.
Para crear y comenzar a editar un recorrido, haz lo siguiente:
- En el panel Project de Android Studio, haz clic con el botón derecho en el módulo de la app para el que deseas escribir un recorrido.
- Selecciona New > Journey Test.
En el diálogo que aparece, proporciona el nombre y la descripción de tu recorrido.
Un diálogo en Android Studio que usas para crear un archivo de recorrido. Haz clic en Finish. Android Studio crea un archivo XML para tu recorrido con el nombre que elegiste. Puedes usar la vista Code para editar el XML directamente o la vista Design para una experiencia de edición simplificada.
Cuando veas tu recorrido en la vista Diseño, usa el campo de texto para describir cada paso del recorrido. Cada paso puede incluir acciones descriptivas que quieras que Gemini realice o aserciones que quieras que Gemini evalúe.
Presiona Intro en el teclado para comenzar un nuevo paso en el mismo recorrido. Puedes repetir este paso según sea necesario para cada etapa del recorrido que desees definir.
Cómo configurar variantes de compilación
Los viajes se ejecutan en variantes de compilación específicas de tu app. Cuando creas un viaje por primera vez con el asistente, el paquete de pruebas generado se configura para ejecutarse en la variante de compilación que está activa en Android Studio.
Sin embargo, si más adelante cambias la variante de compilación activa en Android Studio (por ejemplo, a una variante de producto diferente, como demoDebug) sin actualizar la configuración, fallará la ejecución del recorrido. Para corregir este problema, debes agregar la nueva variante a la propiedad targetVariants en el bloque testSuites de tu archivo build.gradle.kts (o build.gradle) a nivel del módulo.
Por ejemplo, para configurar el paquete journeysTest para la variante demoDebug, haz lo siguiente:
android {
// ...
testSuites {
create("journeysTest") {
// ...
targetVariants += listOf("demoDebug")
}
}
}
Sugerencias para escribir viajes
Si bien la IA es capaz de comprender la mayoría de los pasos escritos en los idiomas admitidos, seguir estas sugerencias para escribir recorridos puede generar resultados más precisos y esperados:
- Supón que tu app ya está en primer plano: Ejecutar un viaje inicia automáticamente tu app. Los pasos del viaje deben comenzar después de que la app se haya iniciado por completo. Es decir, no es necesario que incluyas "iniciar la app" como un paso.
- Usa un lenguaje inequívoco: Ser preciso minimiza las malas interpretaciones y mejora la confiabilidad.
| En lugar de | Qué hacer |
|---|---|
| "Selecciona el botón de descarte". | "Presiona "Descartar"" o simplemente "Descartar". |
| "Escribe 'apio'". | "Escribe "apio" en la barra de búsqueda que se encuentra en la parte superior de la pantalla principal". |
| Desliza para descartar | Desliza el dedo hacia la izquierda para descartar la tarjeta, que ya no debería estar visible. |
- Incluye los criterios de éxito como parte del paso: Esto ayuda a Gemini a comprender mejor tu intención y aclara cuándo se completa la acción y cuándo puede comenzar la siguiente.
| En lugar de | Qué hacer |
|---|---|
| "Selecciona el botón de enviar". | "Presiona el botón de envío para enviar el correo electrónico. Esto debería cerrar el correo electrónico y volver a la bandeja de entrada". |
| “Ir al carrito de compras” | Presiona el ícono de carrito de compras, que te llevará a la página del carrito. Verifica que no contenga elementos". |
| "Haz clic en el primer video". | "Haz clic en el primer video y espera a que se cargue por completo". |
- Cómo mejorar tu recorrido: Si tu recorrido no se ejecuta como esperabas, puedes ver los resultados y revisar la sección "Acción realizada" y el "Razonamiento" correspondiente para comprender por qué Gemini podría no haber ejecutado los pasos como esperabas. Usa esta información para brindar mayor claridad a tus instrucciones.
- Divide tu recorrido en pasos más específicos: Si bien la IA puede interpretar pasos de varias acciones, a veces, los pasos discretos más detallados pueden mejorar la precisión y la reproducibilidad del recorrido.
- "Error: Could not successfully complete the action in max allowed attempt": Si te encuentras con este error, intenta dividir los pasos que fallan en dos o más pasos más pequeños. Esto se debe a que este error se produce si la IA no puede completar la acción después de intentar una cantidad máxima de interacciones con tu app.
Funciones compatibles y no compatibles
A continuación, se incluye una descripción general de las capacidades admitidas y las que aún no se admiten por completo cuando se escriben recorridos. Las siguientes listas no son exhaustivas.
Las siguientes acciones son compatibles en los recorridos:
- Presiona elementos de la IU.
- Escribe para ingresar texto en los campos de texto.
- Desliza o desplázate en una dirección determinada para navegar por la IU.
Por el momento, las siguientes capacidades no son totalmente compatibles o pueden tener un rendimiento inconsistente:
- Gestos con varios dedos (por ejemplo, pellizcar para hacer zoom): Interacciones que requieren dos o más puntos de contacto en la pantalla de forma simultánea, como pellizcar para acercar o alejar el zoom, o deslizar el dedo con dos dedos.
- Mantener presionado: Presionar y mantener un dedo presionado durante un período más largo que un toque estándar.
- Doble toque: Presionar rápidamente dos veces la misma ubicación en la pantalla en rápida sucesión.
- Rotación o plegado de la pantalla: Controla los cambios en la orientación del dispositivo (por ejemplo, entre vertical y horizontal) o el estado físico de los dispositivos plegables (por ejemplo, abrir o cerrar).
- Memoria: Retiene y recuerda información específica, contexto o entradas del usuario en interacciones o pasos anteriores.
- Recuento: Realiza un seguimiento preciso de las cantidades, las frecuencias o el progreso.
- Sentencias condicionales: Ejecutan acciones según si se cumplen otras condiciones especificadas.
Las funciones y capacidades mejoran constantemente. Te sugerimos que consultes esta página más adelante para obtener información sobre las funciones y capacidades adicionales. Comparte tus comentarios para ayudarnos a mejorar Viajes.
Ejecuta tu viaje
Puedes ejecutar tu recorrido en cualquier dispositivo local o remoto disponible, de manera similar a cualquier otra prueba de instrumentación, y Android Studio generará resultados enriquecidos que te ayudarán a comprender la ejecución de tu recorrido.
Para probar un recorrido, haz lo siguiente:
- Selecciona un dispositivo de destino en la barra de herramientas principal, como lo harías cuando ejecutas una prueba instrumentada.
- Navega al archivo XML del viaje que deseas probar y ábrelo en el editor.
- En el editor, realiza una de las siguientes acciones:
- Si estás en la vista Diseño, haz clic en
Ejecutar recorrido. - Si estás en la vista Código, haz clic en Ejecutar "prueba" (Run "test")
en el margen junto a donde se define el nombre del viaje en el XML.
- Si estás en la vista Diseño, haz clic en
Android Studio crea una configuración de Prueba de Journeys para ti y la ejecuta en el dispositivo de destino. Durante la ejecución, Android Studio compila e implementa tu app, y se conecta a Gemini para determinar qué acciones tomar en cada paso de tu recorrido.
Ejecuta recorridos en cualquier app preinstalada
Puedes ejecutar un recorrido en una app preinstalada en tu dispositivo de prueba. Esto es útil si quieres probar una versión de producción de tu app o si aún no la actualizaste al complemento de Android para Gradle 9.0.0 o una versión posterior.
- Abre o crea un proyecto nuevo que se haya actualizado al complemento de Android para Gradle 9.0.0 o una versión posterior.
- Escribe un viaje.
- Edita la configuración de ejecución para el recorrido y agrega las siguientes variables de entorno. Se crea automáticamente una configuración de ejecución cuando intentas ejecutar un recorrido desde Android Studio.
- Establece
JOURNEYS_CUSTOM_APP_IDen el ID del paquete de la app objetivo.
- Establece
- Ejecuta el viaje que editaste. Android Studio debería ejecutar los pasos del recorrido en la app de destino que especificaste.
Cómo ejecutar un recorrido desde la línea de comandos
Para ejecutar Journeys desde la línea de comandos, usa la CLI de Android.
Ver resultados
Cuando Android Studio termine de probar tu recorrido, aparecerá automáticamente el panel de resultados de la prueba para mostrarte los resultados.
En comparación con otras pruebas instrumentadas que puedes ejecutar en Android Studio, existen algunas diferencias en la forma en que se muestran los resultados de los viajes.
- El panel Pruebas desglosa el recorrido en pasos discretos. Puedes hacer clic en cada paso para obtener más información sobre cómo lo ejecutó Gemini.
- El panel Resultados muestra información enriquecida para ayudarte a comprender cómo Gemini entendió y razonó tu viaje, y cómo se ejecutó.
- Las capturas de pantalla que se enviaron a Gemini se muestran como ayuda visual en cada acción del paso.
- Cada acción que se realiza y el razonamiento de Gemini para llevarla a cabo se describen junto a cada captura de pantalla.
- Cada acción del paso está numerada.
Problemas conocidos
- Cuando pruebas un recorrido, se otorgan todos los permisos para tu app de forma predeterminada.
- Cuando pruebes un recorrido en un dispositivo que ejecute Android 15 (nivel de API 35), es posible que veas una advertencia en el dispositivo que diga "Se bloqueó la app no segura" para "AndroidX Crawler". Puedes hacer clic en Instalar de todos modos para omitir esta verificación. Como alternativa, puedes configurar las opciones para desarrolladores integradas en el dispositivo y, luego, inhabilitar la opción para verificar apps por USB.