Solución de problemas de Test Lab y preguntas frecuentes

En esta página, se proporciona ayuda para solucionar problemas y respuestas a preguntas frecuentes sobre la ejecución de pruebas con Firebase Test Lab. Los problemas conocidos también se documentan. Si no encuentras lo que buscas o necesitas más ayuda, únete al canal #test-lab de la comunidad de Firebase en Slack o comunícate con el equipo de asistencia de Firebase.

Soluciona problemas

Cuando seleccionas un dispositivo con un nivel de capacidad alto en el catálogo de Test Lab, las pruebas pueden comenzar más rápido. Cuando un dispositivo tiene capacidad baja, las pruebas pueden tardar más en ejecutarse. Si la cantidad de pruebas invocadas es mucho mayor que la capacidad de los dispositivos seleccionados, las pruebas pueden tardar más en completarse.

Las pruebas que se ejecutan en cualquier nivel de capacidad del dispositivo pueden tardar más debido a los siguientes factores:

  • Tráfico, que afecta la disponibilidad del dispositivo y la velocidad de prueba.
  • Fallas en el dispositivo o la infraestructura, que pueden ocurrir en cualquier momento. A fin de verificar si hay fallas de infraestructura informadas para Test Lab, consulta el panel de estado de Firebase.

Si quieres obtener más información sobre la capacidad del dispositivo en Test Lab, consulta la información sobre capacidad del dispositivo para iOS y Android.

Por lo general, los resultados de la prueba no son concluyentes debido a ejecuciones de pruebas canceladas o errores de infraestructura.

Los errores de infraestructura se deben a problemas internos de Test Lab, como errores de red o comportamientos inesperados del dispositivo. Test Lab retira las ejecuciones de pruebas que producen errores de infraestructura varias veces antes de informar un resultado no concluyente. Sin embargo, puedes inhabilitar estos reintentos con failFast.

Para determinar la causa del error, sigue estos pasos:

  1. Consulta si hay interrupciones conocidas en el panel de estado de Firebase.
  2. Vuelve a ejecutar la prueba en Test Lab para verificar que se pueda reproducir.

  3. Intenta ejecutar la prueba en otro dispositivo o tipo de dispositivo, si corresponde.

Si el problema persiste, comunícate con el equipo de Test Lab en el canal#test-lab de Firebase en Slack.

La fragmentación puede provocar que las pruebas se ejecuten durante más tiempo cuando la cantidad de fragmentos que especificaste supera la cantidad de dispositivos disponibles para usar en Test Lab. Para evitar esta situación, intenta cambiar a un dispositivo diferente. Si quieres obtener más información para elegir otro dispositivo, consulta Capacidad del dispositivo.

Cuando envías una solicitud de prueba, tu app se valida, se vuelve a firmar, etc., a modo de preparación para ejecutar pruebas en un dispositivo. Por lo general, este proceso se completa en unos pocos segundos, pero puede verse afectado por factores como el tamaño de la app.

Una vez que tu app esté lista, las ejecuciones de prueba se programan y permanecen en una cola hasta que un dispositivo esté listo para ejecutarla. Hasta que todas las ejecuciones de prueba terminen de ejecutarse, el estado de la matriz será “Pendiente” (sin importar si las ejecuciones de prueba están en cola o se están ejecutando de forma activa).

Una vez finalizada la ejecución de prueba, los artefactos de prueba se descargan del dispositivo, se procesan y se suben a Cloud Storage. La duración de este paso puede verse afectada por la cantidad y el tamaño de los artefactos.

Preguntas frecuentes

Firebase Test Lab ofrece cuotas sin costo para realizar pruebas en dispositivos y usar las API de Cloud. Ten en cuenta que la cuota para pruebas utiliza el plan de precios estándar de Firebase, mientras que las cuotas de la API de Cloud no.

  • Cuota para pruebas

    Esta se determina según la cantidad de dispositivos que se usen para realizar las pruebas. El plan Firebase Spark tiene una cuota de pruebas fija sin costo para los usuarios. En el plan Blaze, las cuotas pueden aumentar si tu uso de Google Cloud aumenta con el tiempo. Si alcanzas el límite de la cuota para pruebas, espera hasta el día siguiente o actualiza al plan Blaze si cuentas con el plan Spark. Si ya tienes el plan Blaze, puedes solicitar un aumento de cuota. Para obtener más información, consulta Cuota para pruebas.

    Puedes supervisar el uso de la cuota de pruebas en la consola de Google Cloud.

  • Cuota de la API de Cloud Testing

    La API de Cloud Testing incluye dos límites de cuota: solicitudes al día por proyecto y solicitudes cada 100 segundos por proyecto. Puedes supervisar tu uso en la consola de Google Cloud.

  • Cuota de la API de Cloud Tool Results

    La API de Cloud Tool Results incluye dos límites de cuota: consultas al día por proyecto y consultas cada 100 segundos por proyecto. Puedes supervisar tu uso en la consola de Google Cloud.

    Consulta las cuotas de la API de Cloud para Test Lab y obtén más información sobre los límites de la API. Si alcanzaste una cuota de API, tienes las siguientes opciones:

    • Envía una solicitud de aumento de cuota. Para ello, edita las cuotas directamente en la consola de Google Cloud (ten en cuenta que la mayoría de los límites se establecen como máximos de forma predeterminada).

    • Completa un formulario de solicitud en la consola de Google Cloud o comunícate con el equipo de asistencia de Firebase para solicitar una cuota de API mayor.

Desde tu backend puedes determinar si el tráfico proviene de dispositivos de prueba alojados en Firebase. Para ello, revisa si la dirección IP de origen pertenece a nuestros rangos de IP.

Test Lab no funciona con VPC‑SC, que bloquea la copia de apps y otros artefactos de prueba entre el almacenamiento interno de Test Lab y los depósitos de resultados de los usuarios.

Para detectar un comportamiento inestable en tus pruebas, te recomendamos usar las opciones --num-flaky-test-attempts . Las ejecuciones de reintento que corrigieron las inestabilidades se facturan o se consideran en tu cuota diaria de la misma manera que las ejecuciones de prueba normales.

Ten en cuenta lo siguiente:

  • Cuando se detecta una falla, se vuelve a ejecutar toda la ejecución de prueba. No hay asistencia para volver a ingresar solo los casos de prueba que fallaron.
  • Las ejecuciones de reintento que corrigieron inestabilidades están programadas para ejecutarse al mismo tiempo, pero no se garantiza que se ejecuten en paralelo, por ejemplo, cuando el tráfico supera la cantidad de dispositivos disponibles.

Si bien algunas de estas plataformas de pruebas y desarrollo de apps están en nuestra hoja de ruta, en este momento no podemos garantizar la compatibilidad con ellas.

La información detallada del dispositivo está disponible a través de la API y se puede acceder a ella desde el cliente de gcloud con el comando describe:

gcloud firebase test ios models describe MODEL

La fragmentación no es compatible de forma nativa con Test Lab para iOS. Sin embargo, puedes usar el cliente Flank para fragmentar casos de prueba de iOS.

Esto funciona estableciendo los valores y la clave de OnlyTestIdentifiers en el archivo .xctestrun. Consulta la página man de xcodebuild.xctestrun para obtener más información.

En iOS 18 o versiones posteriores, no podemos admitir videos en los resultados.

Problemas conocidos

La prueba Robo no puede pasar las pantallas de acceso que solicitan una acción adicional del usuario, aparte de ingresar credenciales de acceso (como completar un CAPTCHA).

El acceso automático con una Cuenta de Google no es compatible con las pruebas Robo para iOS+ (beta).