Comience con Firebase Test Lab para iOS

Firebase Test Lab te permite realizar pruebas de calidad de tu aplicación en una variedad de dispositivos y configuraciones. Esta guía proporciona una descripción general de los conceptos clave de Test Lab, las ofertas de iOS e instrucciones sobre cómo comenzar a realizar pruebas.

Para obtener información sobre las cuotas y los planes de precios de Test Lab, consulte Uso, cuotas y precios .

Conceptos y términos clave

Cuando ejecuta una prueba o un conjunto de casos de prueba en dispositivos y configuraciones que ha seleccionado, Test Lab ejecuta la prueba en su aplicación en un lote y luego muestra los resultados como una matriz de prueba .

Dispositivos × Ejecuciones de prueba = Matriz de prueba

Dispositivo
Un dispositivo físico o virtual (solo Android) en el que realiza una prueba, como un teléfono, una tableta o un dispositivo portátil. Los dispositivos en una matriz de prueba se identifican por modelo de dispositivo, versión del sistema operativo, orientación de la pantalla y configuración regional (también conocida como configuración geográfica y de idioma).
Prueba, ejecución de prueba.
Una prueba (o un conjunto de casos de prueba) que se ejecutará en un dispositivo. Puede ejecutar una prueba por dispositivo u, opcionalmente, fragmentar la prueba y ejecutar sus casos de prueba en diferentes dispositivos.
Matriz de prueba
Contiene los estados y resultados de las pruebas para sus ejecuciones de pruebas. Si falla alguna ejecución de prueba en una matriz, falla toda la matriz.

Paso 1 : Prepare su prueba para cargarla en Test Lab

Puede ejecutar las siguientes pruebas con Test Lab. Tenga en cuenta que todos los tipos de pruebas pueden ejecutarse hasta un máximo de 45 minutos en dispositivos físicos y cualquier excepción no detectada provocará una falla en la prueba.

  • XCTest (incluido XCUITests) : una prueba unitaria que ha escrito utilizando el marco XCTest . Visite Crear un XCTest para obtener instrucciones sobre cómo modificar un XCTest para ejecutarlo con Test Lab.

  • Prueba de Game Loop : una prueba que utiliza un "modo de demostración" para simular las acciones del jugador en aplicaciones de juegos. Esta es una forma rápida y escalable de verificar que su juego funcione bien para los usuarios. Cuando eliges ejecutar una prueba de Game Loop, puedes:

    • Escribe pruebas nativas para el motor de tu juego.

    • Evite escribir el mismo código para diferentes UI o marcos de prueba.

    • Opcionalmente, cree varios bucles para ejecutarlos en una única ejecución de prueba. También puede organizar bucles mediante etiquetas para poder realizar un seguimiento de ellos y volver a ejecutar bucles específicos.

    Visita Ejecutar una prueba de Game Loop para obtener instrucciones sobre cómo ejecutar tu prueba en Test Lab.

Paso 2 : elija una herramienta para ejecutar su prueba

Puede elegir las siguientes herramientas para ejecutar su prueba:

  • La consola Firebase te permite cargar una aplicación e iniciar pruebas desde cualquier lugar. Consulte Prueba con Firebase console para obtener instrucciones sobre cómo usar esta herramienta.

  • La interfaz de línea de comandos (CLI) de gcloud te permite ejecutar pruebas desde la línea de comandos de forma interactiva y también es muy adecuada para secuencias de comandos como parte de tu proceso automatizado de compilación y prueba. Consulta Prueba con la CLI de gcloud para obtener instrucciones sobre cómo usar esta herramienta.

  • Antes de realizar pruebas en dispositivos reales, ejecute la prueba localmente en un simulador para asegurarse de que se comporta según lo previsto. Consulte Prueba local para obtener instrucciones.

Paso 3 : especificar los dispositivos de prueba

Con Test Lab, puede ejecutar su prueba en su aplicación en una amplia gama de dispositivos y modelos iOS alojados en un centro de datos de Google. Para obtener más información, consulte Dispositivos disponibles.

Paso 4 : revisar los resultados de la prueba

Independientemente de cómo inicie sus pruebas, Test Lab administra todos los resultados de sus pruebas y se pueden ver en línea.

El resumen de los resultados de la prueba se almacena automáticamente y se puede ver en Firebase console. Contiene los datos más relevantes para su prueba, incluidos videos de casos de prueba específicos, capturas de pantalla, la cantidad de pruebas que pasaron, fallaron o obtuvieron resultados incorrectos, y más.

Los resultados de las pruebas sin procesar contienen registros de pruebas y detalles de fallas de la aplicación, y se almacenan automáticamente en un depósito de Google Cloud. Si especifica un depósito, usted es responsable del costo del almacenamiento. Si no especifica un depósito, Test Lab crea uno para usted sin costo alguno.

Para obtener más detalles, consulte Analizar los resultados del laboratorio de pruebas de Firebase.

Limpieza del dispositivo

Google se toma muy en serio la seguridad de los datos de sus aplicaciones. Seguimos las mejores prácticas estándar de la industria para eliminar datos de aplicaciones y restablecer la configuración del sistema para dispositivos físicos después de cada ejecución de prueba para garantizar que estén listos para ejecutar nuevas pruebas. Para los dispositivos que podemos actualizar con una imagen de recuperación personalizada, vamos un paso más allá al actualizar estos dispositivos entre ejecuciones de prueba.

Para los dispositivos virtuales utilizados por Test Lab, las instancias de dispositivos se eliminan después de su uso para que cada ejecución de prueba utilice una nueva instancia de dispositivo virtual.


Permitir que los dispositivos de Test Lab accedan a servidores backend privados

Algunas aplicaciones móviles necesitan comunicarse con servicios backend privados para funcionar correctamente durante las pruebas. Si sus servidores backend están protegidos por reglas de firewall, puede permitir el acceso a los dispositivos físicos y virtuales de Test Lab utilizando los bloques de direcciones IP a continuación para abrir rutas a través de su firewall.

La publicidad móvil

Test Lab proporciona una infraestructura escalable que automatiza las pruebas de aplicaciones y, lamentablemente, esta capacidad puede ser utilizada indebidamente por aplicaciones maliciosas diseñadas para generar ingresos publicitarios fraudulentos.

Para mitigar este problema:

  • Si utiliza o trabaja con proveedores de publicidad digital de terceros (por ejemplo, redes publicitarias o plataformas del lado de la demanda), se recomienda utilizar anuncios de prueba en lugar de anuncios reales durante el desarrollo y las pruebas de la aplicación.

  • Si debe utilizar anuncios reales en su prueba, notifique a los proveedores de publicidad digital con los que trabaja para filtrar los ingresos y todo el tráfico correspondiente generado desde Test Lab utilizando los bloques de direcciones IP a continuación . No es necesario que notifique a los proveedores de publicidad propiedad de Google; Test Lab se encarga de eso por usted.

Direcciones IP utilizadas por los dispositivos Test Lab

Todo el tráfico de red generado por los dispositivos Test Lab se origina en los siguientes bloques de direcciones IP . También puedes acceder a esta lista mediante el comando gcloud beta firebase test ip-blocks list en la CLI de gcloud . La lista se actualiza en promedio una vez al año.

Tipo de plataforma y dispositivo Bloque de direcciones IP CIDR
Dispositivos físicos Android e iOS, dispositivos virtuales Arm

70.32.128.0/19 (agregado 02-2022)

108.177.6.0/23

108.177.18.192/26 (agregado 02-2022)

108.177.29.64/27 (ampliado 02-2022)

108.177.31.160/27 (agregado 02-2022)

199.36.156.8/29 (agregado 02-2022)

199.36.156.16/28 (agregado 02-2022)

209.85.131.0/27 (agregado 02-2022)

2001:4860:1008::/48 (agregado en 02-2022)

2001:4860:1018::/48 (agregado en 02-2022)

2001:4860:1019::/48 (agregado en 02-2022)

2001:4860:1020::/48 (agregado en 02-2022)

2001:4860:1022::/48 (agregado en 02-2022)

Dispositivos virtuales Android (sin Arm)

34.68.194.64/29 (agregado el 11-2019)

34.69.234.64/29 (agregado el 11-2019)

34.73.34.72/29 (agregado el 11-2019)

34.73.178.72/29 (agregado el 11-2019)

34.74.10.72/29 (agregado 02-2022)

34.136.2.136/29 (agregado 02-2022)

34.136.50.136/29 (agregado 02-2022)

34.145.234.144/29 (agregado 02-2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (agregado el 7-2019)

35.245.243.240/29 (agregado 02-2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Los bloques de IP del dispositivo ya no se utilizan

74.125.122.32/29 (eliminado en 02-2022)

216.239.44.24/29 (eliminado en 02-2022)