Ejecutar un script de Robo

Este documento describe cómo usar los scripts de Robo , que son pruebas que automatizan las tareas manuales de control de calidad para aplicaciones móviles y permiten la integración continua (CI) y las estrategias de prueba previas al lanzamiento. Por ejemplo, puede usar secuencias de comandos de Robo para probar un viaje de usuario común o proporcionar una entrada de interfaz de usuario (UI) específica, como un nombre de usuario y una contraseña. Los scripts Robo son una característica de la prueba Robo .

Con las secuencias de comandos de Robo, se graba a sí mismo caminando por un flujo de trabajo en su aplicación, luego carga esa grabación en la consola de Firebase para ejecutar las pruebas de Robo. Cuando ejecuta una prueba de Robo con un script adjunto, Robo primero recorre las acciones preestablecidas y luego explora la aplicación como de costumbre.

Los scripts de Robo comienzan cuando la aplicación se carga por primera vez utilizando la prueba de Robo como motor de prueba. En su forma más básica, un script de Robo consta de una secuencia de acciones de la interfaz de usuario, como ingresar el texto 'nombre de usuario' y luego tocar el botón Aceptar . Los scripts de Robo también pueden incluir acciones como esperar a que aparezca un elemento, tocar en un punto específico dentro de un elemento y ejecutar comandos de shell de Android Debug Bridge ( adb ).

Los scripts de Robo tienen las siguientes ventajas sobre los marcos de prueba tradicionales:

Capacidad Descripción
Altamente robusto Los scripts de Robo pueden tolerar diferencias estructurales y de comportamiento significativas entre las versiones de la aplicación y la inconsistencia de la aplicación.
Abierto Una vez que se completa un script de Robo, la prueba básica de Robo puede hacerse cargo y continuar probando la aplicación. Este enfoque de prueba continuo permite varios casos de uso clave. Por ejemplo, puede usar un script de Robo para llevar una aplicación a un estado particular al realizar un flujo de inicio de sesión personalizado.
grabable No necesita codificar los scripts de Robo manualmente. Se pueden grabar con la grabadora de scripts Robo en Android Studio. La creación o modificación de secuencias de comandos de Robo normalmente no requiere ningún conocimiento de desarrollo móvil.
Flexible Los scripts de Robo pueden interactuar con elementos de interfaz de usuario no nativos que son comunes en los juegos.

Le recomendamos que utilice secuencias de comandos de Robo siempre que sea posible porque son fáciles de mantener. Por ejemplo, puede usar un script de Robo para hacer lo siguiente:

  • Navegue por flujos de trabajo significativos para llegar al núcleo de la funcionalidad de una aplicación. Por ejemplo, puede realizar un inicio de sesión, configurar el estado de una aplicación después del primer lanzamiento y registrar un nuevo usuario.
  • Enfoca a Robo en una parte particular de una aplicación para aprovechar al máximo el tiempo de prueba de Robo. El script de Robo guía a la prueba de Robo para llegar a la parte relevante de una aplicación, donde la prueba de Robo reanuda un rastreo totalmente automatizado.
  • Lleve una aplicación a un estado o pantalla específicos para realizar un análisis, por ejemplo, para analizar un mensaje en la aplicación, una política de privacidad o un nivel específico de un juego.
  • Realice una prueba de instrumentación de un extremo a otro, con o sin prueba de Robo, reanudando un rastreo completamente automatizado después de que se complete el script de Robo.

Tenga en cuenta que los scripts de Robo no reemplazan todo tipo de pruebas. Todavía necesita pruebas unitarias para detectar errores lógicos de bajo nivel en su aplicación; estas pruebas normalmente no requieren un entorno Android o iOS. Le recomendamos que complemente las pruebas de secuencias de comandos de Robo con pruebas de instrumentación dirigidas que pueden tener afirmaciones específicas y detalladas sobre la lógica empresarial, que se expresan mejor en código.

Grabe un script de Robo usando Test Lab en Android Studio

La grabadora de scripts de Robo en Android Studio le permite grabar scripts de Robo interactuando directamente con la aplicación en su dispositivo. Siga estas instrucciones para comenzar con las secuencias de comandos de Robo a través de la herramienta Firebase en Android Studio:

  1. Abra Android Studio y seleccione Herramientas -> Firebase .

  2. En el panel de Firebase, haga clic en Grabar script de Robo y usarlo para guiar la prueba de Robo .

  3. Haga clic en Grabar guión de Robo . Aparece el cuadro de diálogo Seleccionar destino de implementación.

  4. Seleccione el dispositivo en el que desea grabar el script de Robo.

  5. Después de grabar el script de Robo en el dispositivo, guarde el archivo como un archivo JSON en la ubicación deseada.

  6. Abra la página Test Lab en Firebase console y cargue el archivo de secuencia de comandos JSON y el APK de la aplicación.

  7. Haga clic en el botón Continuar . Se le pedirá que seleccione el dispositivo y el nivel de API. Una vez que se completa el script de prueba, Test Lab genera el informe de prueba.

  8. (Opcional) Para copiar o descargar el logcat del informe de prueba y el video, haga clic en Ver archivos de origen .

De forma predeterminada, los mecanismos de robustez de scripts de Robo evitan que falle antes de tiempo. Si elige el modo de ejecución strict y una secuencia de comandos de Robo falla en algún momento, Test Lab abandona todos los pasos posteriores de la secuencia de comandos y reanuda un rastreo de Robo normal. La mayoría de las veces, los scripts de Robo fallan porque Robo no puede encontrar un elemento requerido en la pantalla. Para evitar fallas, asegúrese de que la navegación de su aplicación sea predecible y que sus pantallas se muestren en un orden determinista.

Ejecute un script de Robo en Test Lab

Para ejecutar un script de Robo en Test Lab, siga estas instrucciones:

  1. Abra la página Test Lab en Firebase console.

  2. Cargue el APK o AAB de la aplicación en el campo APK o AAB de la aplicación .

  3. Cargue su archivo de secuencia de comandos de Robo grabado o creado manualmente en el campo de secuencia de comandos de Robo (opcional) .

Proporcionar un script de Robo a una ejecución de prueba local de Robo

Para proporcionar un script de Robo a una ejecución de prueba de Robo local, use la siguiente opción de prueba de Robo:

--robo-script-file <robo-script-path>

Reemplace <robo-script-path> con una ruta a su archivo de script Robo en el sistema de archivos local. Siga las instrucciones para una prueba local de Robo .

Especificar una secuencia de comandos de Robo en una invocación de prueba de la CLI de gcloud

Para especificar una secuencia de comandos de Robo en una invocación de prueba de la CLI de gcloud, use la siguiente marca de la CLI de gcloud:

--robo-script = <robo-script-path>

Reemplace <robo-script-path> con una ruta a su archivo de script de Robo en el sistema de archivos local o en Cloud Storage usando la notación gs:// . Por ejemplo:

gcloud firebase test android run --app = <path_to_app_apk_file> --robo-script = <robo-script-path>

Próximos pasos