En este documento, se describen los AVD para Test Lab, incluidos los beneficios y las limitaciones conocidas. También proporcionamos recomendaciones para probar tu app durante el ciclo de vida de desarrollo. Los AVD de Test Lab son similares a los AVD para Android Studio, pero están optimizados para el rendimiento con pruebas en la nube, por lo que hay algunas diferencias entre ambos.
Los AVD de Test Lab con el sufijo .arm o (Arm) son emuladores avanzados que proporcionan los siguientes beneficios:
Tiempo de ejecución de pruebas más rápido
Tamaños y densidades de pantalla alineados con los AVD de Android Studio para mantener la coherencia
Gráficos acelerados compatibles con GPU
En la siguiente tabla, se describen los beneficios de usar dispositivos virtuales:
Beneficio | Descripción | Casos de uso |
Alta disponibilidad | Puedes ejecutar y obtener resultados de pruebas de forma más rápida cuando usas dispositivos virtuales. Dado que los dispositivos virtuales se crean según demanda, las pruebas se inician casi de inmediato, lo que proporciona una validación rápida de la app. | Probar pequeñas actualizaciones para tu app o realizar pruebas de regresión |
Mayor duración de las pruebas | Los dispositivos virtuales admiten una duración de prueba de hasta 60 minutos. Las pruebas en dispositivos físicos se limitan a una duración de 45 minutos en cada dispositivo. | Ejecutar pruebas más largas |
Costos más bajos | Los dispositivos virtuales tienen un costo de $1 por hora para cada dispositivo virtual que uses con el fin de probar tu app. | Pruebas diarias con sistemas de integración continua o antes de verificar el código. Para obtener más información, consulta Niveles de uso, cuotas y precios de Test Lab. |
Prueba tu app con dispositivos virtuales
Puedes probar tu app con dispositivos virtuales de la misma forma en que lo haces con dispositivos físicos. Puedes seleccionar dispositivos virtuales para las pruebas cuando configuras una matriz de prueba. Para obtener más información sobre cómo ejecutar pruebas con Test Lab, consulta Comienza a realizar pruebas en Android con Firebase Test Lab.
Cómo ver los modelos y las APIs compatibles
Para ver las APIs y los modelos de AVD compatibles con Test Lab, ejecuta el siguiente comando:
gcloud firebase test android models list --filter=virtual
Prácticas recomendadas para probar tu app
Los dispositivos virtuales aumentan el rango de opciones cuando pruebas tu app con Test Lab. Sugerimos aplicar las siguientes prácticas recomendadas para probar tu app a lo largo de su ciclo de vida de desarrollo:
Usa el emulador de Android Studio o un dispositivo físico conectado
Cuando desarrolles tu app, usa el emulador de Android Studio o un dispositivo físico conectado y examina cada compilación para la validación inicial. Si tienes pruebas de instrumentación, también puedes ejecutarlas desde Android Studio en dispositivos físicos o virtuales proporcionados por Test Lab.
Usa sistemas de CI para cada cambio de código cuando trabajes en proyectos compartidos
Si trabajas en un proyecto grande o si colaboras con proyectos que se comparten mediante GitHub o un sitio similar, te recomendamos usar sistemas de integración continua (CI). Prueba tus apps en dispositivos virtuales cada vez que se ejecute el sistema de CI o antes de cada solicitud de extracción. Si quieres obtener más información para usar Test Lab con sistemas de integración continua, consulta Usa Test Lab para Android con sistemas de integración continua.
Prueba tu app en dispositivos físicos con Test Lab antes de lanzar actualizaciones significativas
Antes de lanzar actualizaciones de la app con cambios significativos en la IU y la funcionalidad, te recomendamos usar Test Lab para probarla en dispositivos físicos. Esto te permitirá garantizar la estabilidad y el buen rendimiento de tu app en una amplia variedad de dispositivos físicos populares. Las pruebas en dispositivos físicos también garantizan la cobertura de pruebas para cualquier funcionalidad de app que se base en funciones de dispositivos físicos que los dispositivos virtuales no simulan. Para obtener más información sobre estas funciones, consulta Limitaciones conocidas.
Actualizaciones de dispositivos virtuales
De forma periódica, el equipo de Android agrega nuevas imágenes de dispositivos virtuales, hace que las antiguas dejen de estar disponibles y actualiza las existentes. Aplicamos estas actualizaciones a nuestras imágenes de dispositivos virtuales para asegurarnos de que ejecutas pruebas con versiones actualizadas de Android que reflejen las experiencias de tus usuarios.
En casos excepcionales, estas actualizaciones pueden hacer que las pruebas fallen de forma inesperada. Cuando haya una actualización que se sepa que puede producir errores, Test Lab incluirá información en las notas de la versión. Siempre que sea posible, recomendamos usar frameworks de prueba, como Espresso, que sean sólidos ante estos cambios. Cuando no sea posible, te recomendamos que orientes los dispositivos virtuales ARM, que se actualizan con menos frecuencia.
Limitaciones conocidas
Los dispositivos virtuales actualmente son incapaces de simular algunas características de los dispositivos físicos, o pueden hacerlo con algunas limitaciones. En la siguiente tabla, se resumen las características que no están actualmente disponibles en dispositivos virtuales o que están disponibles con ciertas limitaciones:
Función | Detalles |
Interfaces binarias de la aplicación (ABI) | No todos los dispositivos admiten todas las ABI. Si
estás desarrollando con el NDK de Android, asegúrate de generar código para las
ABI compatibles con los dispositivos a los que te orientas (consulta Dispositivos disponibles en
Test Lab). Para obtener más información sobre la administración de ABI, consulta ABI de Android.
Nota: Si una prueba de tu matriz se marca como no válida, puede que tu app dependa de código nativo no compatible con la ABI del dispositivo. |
Rendimiento de gráficos | Los dispositivos virtuales Nexus y Pixel usan la renderización de gráficos con software. Las aplicaciones con un contenido gráfico que consume muchos recursos pueden tener un rendimiento menor. Si tu app tiene contenido gráfico que consume muchos recursos, considera usar en cambio SmallPhone.arm, MediumPhone.arm o dispositivos físicos. |
APIs de gráficos | OpenGL ES 3.x no es compatible con dispositivos con un nivel de API inferior al 29. Los dispositivos más recientes no son 100% compatibles con las APIs de OpenGL o Vulkan. Es posible que notes pequeñas diferencias en los gráficos. |
App de Google Play Store | La app de Google Play Store no es compatible con dispositivos virtuales Arm. |
Funcionalidad de realidad aumentada (RA) | No se admite la prueba de la funcionalidad de realidad aumentada (RA) en dispositivos virtuales. |
Niveles de API anteriores | Los dispositivos virtuales Arm de Test Lab no admiten niveles de API inferiores al 26. |