Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En este documento, se describe cómo usar las secuencias de comandos de Robo, que son pruebas que
automatizan tareas manuales de control de calidad de apps para dispositivos móviles y habilitan las estrategias de
integración continua (CI) y de pruebas previas al lanzamiento. Por ejemplo, puedes usar secuencias de comandos de Robo
para probar un recorrido del usuario común o proporcionar una entrada específica de la interfaz de usuario (IU),
como un nombre de usuario y una contraseña. Las secuencias de comandos de Robo son una función de la
prueba Robo.
Las secuencias de comandos de Robo usan la prueba Robo
como motor de prueba. En su forma más básica, una secuencia de comandos de Robo consta de una
secuencia de acciones de la IU, como ingresar texto de “nombre de usuario” y,
luego, presionar el botón Aceptar. Las secuencias de comandos de Robo también pueden incluir acciones como esperar
a que aparezca un elemento, presionar un punto específico dentro de un elemento y
ejecutar comandos de shell de Android Debug Bridge (adb).
Las secuencias de comandos de Robo tienen las siguientes ventajas en comparación con los frameworks de prueba tradicionales:
Capacidad
Descripción
Altamente robustas
Las secuencias de comandos de Robo pueden tolerar diferencias estructurales y de comportamiento
significativas entre la versión de la app y la fragilidad de la app.
Final abierto
Cuando se complete una secuencia de comandos de Robo, la prueba Robo base podrá tomar el control y
continuar probando la app. Este enfoque de prueba continua habilita
varios casos de uso clave. Por ejemplo, puedes usar una secuencia de comandos de Robo para llevar
una app a un estado particular mediante un flujo de acceso personalizado.
Se pueden grabar
No es necesario que escribas las secuencias de comandos de Robo de forma manual. Se pueden grabar con
la grabadora de secuencias de comandos de Robo de Android Studio. Por lo general, crear o modificar
secuencias de comandos de Robo no requiere ningún conocimiento de desarrollo para dispositivos móviles.
Flexible
Las secuencias de comandos de Robo pueden interactuar con elementos de la IU no nativos que son comunes en
los juegos.
Las secuencias de comandos de Robo se activan de forma condicional durante una prueba Robo, lo que permite a los usuarios
mejorar el comportamiento de Robo, por lo general, para lograr una mayor cobertura o enfocarse
en una funcionalidad específica. A diferencia de los frameworks de prueba tradicionales,
las secuencias de comandos de Robo admiten lo siguiente:
Varias condiciones de activación, por ejemplo, que esté activo un nombre específico de paquete
de app (o no) o que se muestre un elemento específico en la pantalla
(o no)
Controles de ejecución, por ejemplo, una cantidad máxima de ejecuciones, una prioridad
y una etapa de rastreo relevante
Tipos de acciones no convencionales (condicionales, que omitan elementos, o que cierren pantallas)
Te recomendamos que uses secuencias de comandos de Robo siempre que sea posible porque se pueden
mantener sin esfuerzo. Por ejemplo, puedes usar una secuencia de comandos de Robo para lo
siguiente:
Navegar por flujos de trabajo significativos para llegar al núcleo de la funcionalidad de una app.
Por ejemplo, puedes acceder, configurar el estado de una app después del
primer lanzamiento y registrar un usuario nuevo.
Enfocar Robo en una parte particular de una app para aprovechar al máximo el tiempo de prueba de
Robo. La secuencia de comandos de Robo guía la prueba Robo para llegar a la parte relevante de una app,
en la que la prueba Robo reanuda un rastreo completamente automatizado.
Colocar una app en un estado o una pantalla específicos para realizar un análisis, por
ejemplo, a fin de analizar un mensaje desde la app, una política de privacidad o un nivel específico
de un juego
Realizar una prueba de instrumentación de extremo a extremo, con o sin prueba de Robo
para reanudar un rastreo completamente automatizado después de que se complete la secuencia de comandos de Robo
Usa funciones de secuencia de comandos de Robo más avanzadas para hacer lo siguiente:
Realizar acciones antes de que Robo comience a rastrear la app que está a prueba o después de que
se termina de rastrear. Por ejemplo, limpiar los datos de la app que está a prueba antes de un
rastreo o cambiar la configuración del dispositivo.
Cambiar aspectos del comportamiento de Robo durante un rastreo, particularmente los siguientes:
Hacer que Robo omita algunos widgets de la IU o pantallas de la app
Proporcionar una acción personalizada para que Robo la realice cuando haga un retroceso desde una
pantalla en particular
Hacer que Robo realice acciones específicas cada vez que se encuentre
una pantalla específica de la app durante un rastreo
Personalizar completamente la forma en que Robo realiza un rastreo. Por ejemplo, usar una
combinación de acciones condicionales y no condicionales para mantener la
app que está a prueba en segundo plano durante el rastreo, mientras se
manipula el dispositivo y se descarta cualquier cuadro de diálogo emergente
que aparezca
Ten en cuenta que las secuencias de comandos de Robo no reemplazan todos los tipos de pruebas. Necesitas
pruebas de unidades para detectar errores lógicos de bajo nivel en la app. Estas pruebas
no suelen requerir un entorno de Android o iOS. Te recomendamos que
completes las pruebas de secuencias de comandos de Robo con pruebas de instrumentación orientadas que pueden tener
aserciones específicas y detalladas sobre la lógica empresarial, que se expresan mejor
en el código.
[[["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-09-05 (UTC)"],[],[],null,["\u003cbr /\u003e\n\nThis document describes how to use *Robo scripts* , which are tests that automate\nmanual QA tasks for mobile apps, and enable continuous integration (CI) and\npre-launch testing strategies. For example, you can use Robo scripts to test a\ncommon user journey or provide specific user interface (UI) input, like a\nusername and password. Robo scripts are a feature of [Robo\ntest](/docs/test-lab/ios/robo-ux-test).\n\nRobo scripts use [Robo test](/docs/test-lab/android/robo-ux-test)\nas the test engine. In its most basic form, a Robo script consists of a\nsequence of UI actions like *enter text 'username'* and\nthen *tap the OK button* . Robo scripts can also include actions like waiting\nfor an element to appear, tapping at a specific point within an element, and\nexecuting Android Debug Bridge (`adb`) shell commands.\n\nRobo scripts have the following advantages over traditional testing frameworks:\n\n|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Capability** | **Description** |\n| Highly robust | Robo scripts can tolerate significant structural and behavioral differences between app versions and app flakiness. |\n| Open-ended | After a Robo script completes, the base Robo test can take over and continue testing the app. This continued testing approach enables several key use cases. For example, you can use a Robo script to bring an app into a particular state by performing a custom sign-in flow. |\n| Recordable | You don't need to code Robo scripts manually. They can be recorded using the Robo script recorder in Android Studio. Creating or modifying Robo scripts typically doesn't require any knowledge of mobile development. |\n| Flexible | Robo scripts can interact with non-native UI elements that are common in games. |\n\nRobo scripts are conditionally triggered during a Robo test, which lets users\naugment Robo's behavior - typically to achieve greater coverage or target\nspecific functionality. In contrast to traditional testing frameworks,\nRobo scripts support the following:\n\n- Various triggering conditions, for example, a particular app package name being active (or not) or a specific element being displayed on the screen (or not).\n- Execution controls, for example, a maximum number of executions, priority, relevant crawl stage.\n- Unconventional action types (conditional, element-ignoring, screen-closing).\n\nWe recommend that you use Robo scripts whenever possible because they can be\nmaintained effortlessly. For example, you can use a Robo script to do the\nfollowing:\n\n- Navigate significant workflows to get to the core of an app's functionality. For example, you can perform a sign-in, set up an app's state after the first launch, and register a new user.\n- Focus Robo on a particular part of an app to get the most out of Robo test time. Robo script guides Robo test to reach the relevant part of an app, where Robo test resumes a fully automated crawl.\n- Bring an app into a specific state or screen to perform an analysis, for example, to analyze an in-app message, privacy policy, or specific level of a game.\n- Perform an end-to-end instrumentation test, with or without Robo test resuming a fully automated crawl after the Robo script is complete.\n\nUse more advanced Robo script features to do the following:\n\n- Perform actions before Robo starts crawling the app-under-test or after a crawl is finished, for example, clean the app-under-test data before a crawl, or change device settings.\n- Change aspects of Robo behavior during a crawl, in particular:\n - Make Robo ignore some UI widgets or app screens.\n - Provide a custom action for Robo to perform when backtracking from a particular screen.\n - Make Robo perform specific actions whenever a particular app screen is encountered during a crawl.\n- Completely customize how Robo performs a crawl. For example, use a combination of conditional and non-conditional actions to keep the app-under-test in the background throughout the crawl, while performing device manipulations and dismissing any popup dialogs that appear along the way.\n\nKeep in mind that Robo scripts don't replace all kinds of tests. You still\nneed unit tests to catch low-level logic bugs in your app; these tests\ntypically don't require an Android or iOS environment. We recommend that you\nsupplement Robo script tests with targeted instrumentation tests that can have\nspecific, detailed assertions about business logic, which are best expressed\nin code.\n\nNext steps\n\n- To learn about Robo scripts structure, capabilities, usage, and actions, see\n the [Robo scripts reference guide](/docs/test-lab/android/robo-scripts-reference#ios-support-for-robo-scripts).\n\n- [Run a Robo test](/docs/test-lab/ios/robo-ux-test)."]]