Este documento describe los AVD para Test Lab, incluidos los beneficios y las limitaciones conocidas. También brindamos recomendaciones sobre cómo probar su aplicación durante todo 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 existen algunas diferencias entre los dos.
Los AVD de Test Lab con un sufijo .arm o (Arm) son emuladores avanzados que brindan 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 mayor coherencia
Gráficos acelerados compatibles con GPU
La siguiente tabla describe los beneficios de usar dispositivos virtuales:
Beneficio | Descripción | Casos de uso |
Alta disponibilidad | Puede ejecutar pruebas y obtener resultados más rápidamente cuando realiza pruebas con dispositivos virtuales. Debido a que los dispositivos virtuales se crean bajo demanda, sus pruebas comienzan casi de inmediato, lo que proporciona una validación rápida de su aplicación. | Probar pequeñas actualizaciones de su aplicación o realizar pruebas de regresión. |
Duraciones de prueba más largas | Los dispositivos virtuales admiten una duración de prueba de hasta 60 minutos. Las pruebas en dispositivos físicos están limitadas a una duración de 45 minutos en cada dispositivo. | Realizar pruebas más largas |
Costos mas bajos | Los dispositivos virtuales tienen un precio de $1 por hora por cada dispositivo virtual utilizado para probar su aplicación. | Pruebas diarias utilizando sistemas de integración continua o antes de registrar el código. Para obtener más información, consulte Niveles de uso, cuotas y precios de Test Lab . |
Prueba tu aplicación con dispositivos virtuales
Puedes probar tu aplicación con dispositivos virtuales de la misma manera que la pruebas con dispositivos físicos. Puede seleccionar dispositivos virtuales para sus pruebas cuando configura una matriz de prueba. Para obtener más información sobre cómo ejecutar pruebas con Test Lab, consulte Cómo comenzar a realizar pruebas para Android con Firebase Test Lab .
Ver modelos y API compatibles
Para ver los modelos AVD y las API compatibles con Test Lab, ejecute el siguiente comando:
gcloud firebase test android models list --filter=virtual
Mejores prácticas para probar su aplicación
Los dispositivos virtuales aumentan su gama de opciones cuando prueba su aplicación con Test Lab. Recomendamos utilizar las siguientes mejores prácticas para probar su aplicación durante todo el ciclo de vida de desarrollo de la misma:
Utilice el emulador de Android Studio o un dispositivo físico conectado
Al desarrollar su aplicación, use el emulador de Android Studio o un dispositivo físico adjunto para examinar cada compilación para su validación inicial. Si tiene pruebas de instrumentación, también puede ejecutar estas pruebas desde Android Studio en dispositivos físicos o virtuales proporcionados por Test Lab.
Utilice sistemas de CI en cada cambio de código cuando trabaje en proyectos compartidos
Si trabaja en un proyecto grande, o si contribuye a proyectos que se comparten mediante GitHub o un sitio similar, le recomendamos que utilice sistemas de integración continua (CI). Pruebe sus aplicaciones en dispositivos virtuales cada vez que se ejecute el sistema de CI o antes de cada solicitud de extracción. Para obtener más información sobre el uso de Test Lab con sistemas CI, consulte Uso de Test Lab para Android con sistemas de integración continua .
Pruebe su aplicación en dispositivos físicos con Test Lab antes de publicar actualizaciones importantes de la aplicación.
Antes de publicar actualizaciones de aplicaciones con cambios significativos en la interfaz de usuario y la funcionalidad, le recomendamos que utilice Test Lab para probar su aplicación en dispositivos físicos. Esto ayudará a garantizar que su aplicación sea estable y funcione en una amplia gama de dispositivos físicos populares. Las pruebas en dispositivos físicos también garantizan la cobertura de prueba para cualquier funcionalidad de la aplicación que dependa de funciones de dispositivos físicos que no sean simuladas por dispositivos virtuales. Para obtener más información sobre estas funciones, consulte Limitaciones conocidas .
Actualizaciones de dispositivos virtuales
Periódicamente, el equipo de Android agrega nuevas imágenes de dispositivos virtuales, desaproba las antiguas y actualiza las existentes. Aplicamos estas actualizaciones a las imágenes de nuestros dispositivos virtuales para ayudar a garantizar que esté realizando pruebas con versiones actualizadas de Android que reflejen las experiencias de sus usuarios.
En casos excepcionales, estas actualizaciones pueden provocar que las pruebas fallen inesperadamente. Cuando se conozca una actualización potencialmente importante, Test Lab incluirá información en las notas de la versión . Como práctica recomendada, le recomendamos utilizar marcos de prueba (por ejemplo, Espresso ) que sean resistentes a estos cambios siempre que sea posible. Cuando eso no sea posible, le recomendamos que apunte a los dispositivos virtuales Arm, que puede esperar que se actualicen con menos frecuencia.
Limitaciones conocidas
Algunas características de los dispositivos físicos no se simulan actualmente mediante dispositivos virtuales o se simulan con algunas limitaciones. La siguiente tabla resume las funciones que actualmente no están disponibles en dispositivos virtuales o que están disponibles con ciertas limitaciones:
Característica | Detalles |
Interfaces binarias de aplicaciones (ABI) | No todos los dispositivos son compatibles con todas las ABI. Si está desarrollando con el NDK de Android, asegúrese de generar código para las ABI compatibles con los dispositivos a los que se dirige (consulte Dispositivos disponibles en el laboratorio de pruebas). Para obtener más información sobre la gestión de ABI, consulte ABI de Android . Nota: Si una prueba en su matriz de prueba está marcada como No válida, esto puede ocurrir porque su aplicación depende de código nativo no admitido por la ABI del dispositivo. |
Rendimiento de gráficos | Los dispositivos virtuales Nexus y Pixel utilizan la representación de gráficos por software. Las aplicaciones con uso intensivo de gráficos pueden experimentar un rendimiento más bajo. Si su aplicación requiere muchos gráficos, considere usar SmallPhone.arm, MediumPhone.arm o dispositivos físicos en su lugar. |
API de gráficos | OpenGL ES 3.x no es compatible con dispositivos por debajo del nivel API 29. Los dispositivos más nuevos no son 100% compatibles con las API OpenGL/Vulkan; es posible que notes pequeñas diferencias en los gráficos. |
Aplicación Google Play Store | La aplicación Google Play Store no es compatible con dispositivos virtuales Arm. |
Funcionalidad de realidad aumentada (AR) | La prueba de la funcionalidad de Realidad Aumentada (AR) no se admite en dispositivos virtuales. |
Niveles de API más antiguos | Los dispositivos virtuales Test Lab Arm no admiten niveles de API inferiores a 26. |