Preguntas frecuentes sobre AWS Device Farm

Pruebas en dispositivos móviles reales

AWS Device Farm permite a los desarrolladores incrementar la calidad de la aplicación, el tiempo de comercialización y la satisfacción de los clientes al probar e interactuar con dispositivos Android e iOS reales en la nube de AWS. Los desarrolladores pueden cargar su aplicación y scripts de pruebas y ejecutar pruebas automatizadas simultáneamente en cientos de dispositivos reales, por lo que se obtienen resultados, capturas de pantalla, video y datos de rendimiento en minutos. También pueden depurar y reproducir los errores de los clientes deslizando los dedos por la pantalla, haciendo gestos e interactuando con un dispositivo a través de su navegador web.

AWS Device Farm está diseñado para desarrolladores, equipos de control de calidad y representantes del servicio de soporte para clientes que crean, prueban y brindar soporte para aplicaciones móviles para mejorar la calidad de las mismas. La calidad de las aplicaciones es cada vez más importante y compleja, dada la cantidad de modelos de dispositivos, tipos de firmware y versiones de sistemas operativos, elementos personalizados por el operador y el fabricante, y la dependencia de servicios remotos y de otras aplicaciones. AWS Device Farm acelera el proceso de desarrollo al ejecutar pruebas en varios dispositivos, lo que aporta a los desarrolladores y profesionales de control de calidad y soporte la capacidad de ejecutar tareas manuales y pruebas automatizadas, como la reproducción de los problemas de los clientes, pruebas exploratorias de funcionalidades nuevas y la ejecución de planes de pruebas manuales. Además, AWS Device Farm ofrece un ahorro significativo al eliminar la necesidad de contar a nivel interno con laboratorios de dispositivos y directores de laboratorio y de desarrollar una infraestructura de automatización.

AWS Device Farm soporta aplicaciones Android, iOS y web nativas e híbridas y aplicaciones multiplataforma, incluidas las creadas con PhoneGap, Titanium, Xamarin, Unity y otros marcos de trabajo.

Las pruebas de AWS Device Farm se ejecutan en dispositivos reales. Los dispositivos constituyen una combinación de dispositivos de fabricantes de marcas originales y dispositivos de la marca del operador.

Configuración de pruebas y sesiones de acceso remoto

Consulte nuestra guía de introducción.

AWS Device Farm es compatible con Internet Explorer 9 o superior y las versiones más recientes de Chrome, Firefox y Safari.

Las aplicaciones web se probarán con Chrome en Android y con Safari en iOS.

AWS Device Farm soporta archivos de hasta 4 GB de tamaño.

Para utilizar las pruebas integradas, la aplicación no requiere instrumentación ni código fuente. Las aplicaciones Android se pueden proporcionar tal y como están. Las aplicaciones iOS deberían crearse con un "dispositivo iOS" como destino en lugar de un simulador.

Las aplicaciones y los paquetes de prueba se eliminan automáticamente a los 30 días. Los registros, las grabaciones de video y otros artefactos se almacenan durante 400 días. También puede eliminar los archivos y los resultados en cualquier momento a través de la consola o la API de AWS Device Farm.

Una vez que se finaliza la ejecución de la prueba, realizamos una serie de tareas de limpieza en cada dispositivo, entre las que se incluye la desinstalación de su aplicación. Si no podemos comprobar la desinstalación de su aplicación o de cualquiera de los demás pasos de limpieza, el dispositivo se quitará y ya no estará disponible.

Si bien continuamos añadiendo pasos adicionales de limpieza y mejorando el proceso, es posible que, en algunos casos, haya datos que persistan entre sesiones, especialmente si utiliza el sistema de dispositivos fuera del contexto de su aplicación. Por dicho motivo, y porque AWS Device Farm detecta vídeos y logs de actividades que ocurren mientras usted utiliza el dispositivo, se recomienda evitar el suministro e ingreso de información confidencial, como información de cuentas (p. ej., cuenta de Google, id. de Apple), información personal y otros detalles confidenciales durante las sesiones de acceso remoto y las pruebas automatizadas.

En iOS, se sustituye el perfil de aprovisionamiento integrado con un perfil comodín y se vuelve a firmar la aplicación. Si los proporciona, agregaremos datos auxiliares al paquete de la aplicación antes de la instalación, de modo que los datos estén presentes en el entorno de pruebas de su aplicación. Al volver a firmar la aplicación iOS, se eliminan ciertos derechos. Se incluyen el grupo de aplicaciones, los dominios asociados, Game Center, HealthKit, HomeKit, la configuración de accesorios inalámbricos, las compras en la aplicación, el sonido en la aplicación, Apple Pay, las notificaciones push y la configuración y control de VPN.

En Android, se vuelve a firmar la aplicación. Esto podría afectar a la funcionalidad que depende de la firma de la aplicación, como el API de Google Maps para Android. También podrían activarse los sistemas antipiratería y antimanipulación disponibles de productos como DexGuard. En las pruebas integradas, es posible que se modifique el manifiesto para incluir los permisos necesarios para realizar y guardar capturas de pantalla.

Seleccionando dispositivos

AWS Device Farm dispone de una selección cada vez más grande de dispositivos Android, iOS y Fire OS. Agregamos dispositivos nuevos y populares cuando los lanzan los fabricantes. También agregamos dispositivos nuevos a medida que se publican versiones más recientes de los sistemas operativos. Consulte la lista de dispositivos disponibles.

En la actualidad, contamos con dispositivos internacionales de India. Utilizamos los datos de estudio de mercado y los comentarios de los clientes para actualizar la flota constantemente. Si desea que incluyamos algún dispositivo que no aparece en la flota, háganoslo saber.

Para las pruebas automatizadas, los dispositivos se seleccionan de entre un grupo, denominado conjunto de dispositivos. Algunos grupos de dispositivos preparados se proporcionan automáticamente, pero también puede crear sus propios grupos. Durante las pruebas, estas se ejecutan en todos los dispositivos del grupo específico que son compatibles con su aplicación y con las pruebas. Para el acceso remoto, selecciona el dispositivo que desee en función de la marca, el modelo, la versión del operador y la versión del sistema operativo. A continuación, y de forma opcional, puede cargar aplicaciones y otros datos, así como configurar otros ajustes del dispositivo. Entonces, Device Farm busca el dispositivo que se ajuste a sus requisitos y le muestra la pantalla en su navegador. A partir de ese momento, puede interactuar con el dispositivo y realizar capturas de pantalla y de vídeo.

Sí, los dispositivos de prueba contienen varias aplicaciones ya instaladas por la operadora o por el fabricante del dispositivo.

Sí. Todos los dispositivos disponen de conexión wifi con acceso a Internet. Si sus sistemas son internos (es decir, están detrás de un firewall corporativo), puede permitir el intervalo de direcciones IP 54.244.50.32-54.244.50.63. Todo el tráfico de dispositivos procederá de estas IP.

Aunque no es posible probar las conexiones de los operadores reales, puede simular los tipos y las condiciones de la conexión con la funcionalidad de modificación de red. Cuando programe una serie de pruebas, puede seleccionar un perfil de red preconfigurado, como “3G” o “Lossy LTE”, o crear el suyo y controlar parámetros como el desempeño, las vibraciones y la pérdida. Todo el tráfico wifi del dispositivo se modificará y manipulará durante las pruebas en función del perfil que elija. Tambien puede similar entornos dinámicos cambiando los parámetros de red de sus scripts de prueba.

No, los dispositivos no cuentan con conexión al operador y no pueden realizar llamadas ni enviar SMS.

Sí, puede utilizar las cámaras del dispositivo, tanto la frontal como la trasera. Debido al modo en que están montados los dispositivos, es posible que los videos y las imágenes salgan oscuros y borrosos.

Pruebas de la aplicación

El conjunto de pruebas de compatibilidad integradas le permite instalar, desinstalar, lanzar y ejecutar Fuzz en la aplicación.

Fuzz realizará pruebas de exploración de vulnerabilidades mediante datos aleatorios en la interfaz de usuario tras el lanzamiento. Transmite datos de usuario aleatorios (como toques, deslizamientos y pulsaciones del teclado) de manera rápida a su aplicación. Puede configurar la cantidad de eventos, el retraso entre los mismos y el valor de inicialización utilizado para aleatorizar los eventos. El uso del mismo valor de inicialización en las distintas series de pruebas resultará en la misma secuencia de eventos.

AWS Device Farm admite las pruebas en aplicaciones nativas, híbridas y web para las plataformas iOS y Android. De forma predeterminada, se admiten los siguientes marcos: Appium Java JUnit, Appium Java TestNG, Appium Python, Appium Ruby, Appium NodeJS, Instrumentation (que incluye JUnit, Espresso y la mayoría de las pruebas basadas en instrumentación) y XCTest (que incluye XCUI y KIF). Para obtener más información y una lista completa de los marcos compatibles, consulte nuestra documentación.

Puede ejecutar pruebas escritas en Appium Java JUnit, Appium Java TestNG o Appium Python.

Evaluamos constantemente los marcos que admitimos. Contáctenos.

Si utiliza uno de los marcos de automatización compatibles, poseerá el control absoluto y podrá decidir cuándo realizar una captura de pantalla. Las capturas de pantalla se incluyen en los informes automáticamente.

Sí, Google Play Services está instalado en los dispositivos que lo admiten. Los servicios se actualizan a medida que se publican nuevas versiones.

No, los dispositivos no poseen una cuenta de Google activa.

AWS Device Farm admite marcos como Espresso y Robotium, que cuentan con herramientas de scripting de grabación y reproducción.

No, AWS Device Farm sustituirá el perfil de aprovisionamiento y volverá a firmar la aplicación automáticamente para que se pueda implementar en nuestros dispositivos.

No, pero puede descargar los logs y simbolizar el seguimiento de las pilas a nivel local.

Sí, si utiliza ProGuard. Si utiliza DexGuard con las medidas antipiratería, no podremos volver a firmar la aplicación y ejecutar pruebas con ella.

Aunque los dispositivos tienen acceso a Internet, no podemos garantizar que se muestren los anuncios. Le aconsejamos que elimine los anuncios de las versiones que vaya a probar en AWS Device Farm.

Sí. Si está utilizando un marco cliente-servidor como Calabash, Appium o UI Automation, puede acceder a Internet y ejecutar comandos shell limitados desde el host.

Puede proporcionar un archivo .zip de hasta 4 GB de tamaño. En Android, se extraerá a la raíz de la memoria externa y, en iOS, al entorno de pruebas de la aplicación. En el caso de los archivos de expansión (OBB) de Android, el archivo se colocará automáticamente en la ubicación apropiada para la versión del sistema operativo. Para obtener más información, consulte la Guía para desarrolladores.

Sí, puede seleccionar varias aplicaciones y el orden en que estas se instalan. Las aplicaciones dependientes se instalarán antes de que comiencen las pruebas.

Sí. Si desea probar el flujo de actualización, puede subir e instalar una versión antigua de la aplicación antes de instalar y probar la versión nueva.

Sí, puede proporcionar las coordenadas de latitud y longitud, que sustituirán a la configuración del GPS del dispositivo.

Sí, puede proporcionar una configuración regional (por ejemplo, "en_US"), que sustituya a la configuración regional predeterminada del dispositivo.

Las pruebas se agregan a la cola de ejecución inmediatamente y suelen comenzar en cuestión de minutos. Si uno o más dispositivos no se encuentran disponibles, la ejecución de las pruebas en esos dispositivos permanecerá en cola hasta que su estado sea disponible. La serie de pruebas continuará en los demás dispositivos.

El tiempo máximo permitido es de 150 minutos. 

Sí. Tenemos un complemento para el entorno de integración continua Jenkins y uno Gradle compatible con Android Studio. AWS Device Farm también brinda compatibilidad mediante programación para todas las características de la consola, incluida la configuración de una prueba y la descarga de los resultados de la misma a través de una API. Para obtener más información, consulte la referencia de las API de AWS Device Farm. Además de la API, puede obtener acceso a AWS Device Farm desde los SDK de AWS.

Revisar los resultados

Los informes de pruebas de AWS Device Farm incluyen información de prueba superada/no superada, informes de bloqueos, registros de pruebas, registros de dispositivos, capturas de pantalla, videos y datos de rendimiento. Los informes contienen datos detallados por dispositivo y resultados de alto nivel, como las veces que se ha producido un error determinado. Los resultados del acceso remoto contienen logs y un vídeo de la sesión.

Los informes de AWS Device Farm incluyen un logcat completo (Android) y logs por dispositivo (iOS), así como logs del host del dispositivo y del marco de pruebas específico.

Si escribe datos en un logcat (Android) o en el registro del dispositivo (iOS), se incluirán en el informe. AWS Device Farm no recopila logs no estándar ni de otros artefactos, aunque puede transferir archivos mediante su script de pruebas usando la conexión a Internet de su dispositivo o del host de su dispositivo.

Precios

Los precios dependen de los minutos de uso de dispositivos, que se determinan a partir de la duración de las pruebas en cada dispositivo seleccionado. AWS Device Farm viene con una versión de prueba gratuita de 1000 minutos de uso de dispositivos*. Una vez finalizada, se cobrará a los clientes 0,17 USD por minuto de uso de dispositivos. A medida que sus necesidades de pruebas aumenten, puede optar por un plan de pruebas sin medidor de consumo, que permite la ejecución ilimitada de pruebas por una tarifa plana mensual de 250 USD por dispositivo.

Los primeros 1 000 minutos de uso de dispositivos se proporcionan de forma gratuita. Se trata de una prueba única que no se puede renovar. Una vez que se hayan agotado los minutos de la prueba, se le facturará de acuerdo con la tarifa estándar de 0,17 USD por minuto.

Un minuto de uso de dispositivos es la unidad de facturación. Los minutos de uso de dispositivos son una medida del tiempo que se tarda (en minutos) en instalar, ejecutar y desinstalar la aplicación y las pruebas en cada dispositivo seleccionado para realizar la serie de pruebas. El precio de la unidad se mantiene independientemente del dispositivo, la prueba o el tipo de aplicación. Los minutos de uso de dispositivos solo se facturan cuando las pruebas se completan sin errores de dispositivo ni de sistema. De forma similar, en las sesiones de acceso remoto los minutos de dispositivo se miden desde el tiempo que se tarda en preparar un dispositivo de acuerdo con su especificación al momento en que se eliminan completamente las aplicaciones y datos que haya cargado en él.

Puede incrementar y reducir el uso dinámicamente en función de sus necesidades sin limitaciones ni compromisos iniciales.

Los primeros 1000 minutos de uso de dispositivo son gratuitos*. Esta es una prueba única y no se renueva. Una vez que se hayan agotado los minutos de la prueba, se le facturará de acuerdo con la tarifa estándar de 0,17 USD por minuto.

Los planes sin medidor le permiten realizar pruebas y sesiones de acceso remoto ilimitadas a partir de 250 USD por mes. El sistema de precios sin medidor se basa en el número de ranuras de dispositivos que adquiere para cada tipo de uso (es decir, pruebas automatizadas o acceso remoto) y familia de dispositivos (es decir, Android o iOS) y se cobra a 250 USD por ranura al mes. Las ranuras de dispositivos siguen un modelo de simultaneidad.

Por ejemplo, si compra diez ranuras de dispositivos Android para pruebas automatizadas y programa una ejecución en 100 dispositivos Android, Device Farm ejecutará las pruebas en un máximo de diez dispositivos a la vez, hasta que se completen todas las pruebas en los dispositivos seleccionados. La compra de más ranuras le permitirá obtener los resultados con mayor rapidez. Independientemente del número de pruebas o sesiones de acceso remoto que ejecute por mes, se le facturará una tarifa plana de 250 USD por ranura de dispositivos al mes. Puede cancelar su suscripción a una o más ranuras de dispositivos en cualquier momento. La cancelación entrará en vigencia a partir de la próxima fecha de renovación (el día del mes que compró su primera ranura de dispositivo activa). Puede adquirir ranuras desde la consola de AWS Device Farm, la interfaz de línea de comandos de AWS (CLI de AWS) o la API de AWS Device Farm. Para obtener más información, consulte nuestra documentación.

Puede añadir ranuras de dispositivos en cualquier momento, que estarán disponibles al instante. También puede cancelar su suscripción a una o más ranuras de dispositivos en cualquier momento. La cancelación entrará en vigencia a partir de la próxima fecha de renovación (el día del mes que compró su primera ranura de dispositivo activa).

Sí. Al crear una serie, puede decidir utilizar las ranuras de dispositivos sin medidor u optar por los minutos de uso de dispositivos con límites. Como la simultaneidad no está limitada a la facturación con medidor, puede disfrutar de la flexibilidad de ejecutar pruebas con mayor rapidez que lo haría si utilizara sus ranuras de dispositivo.

Un dispositivo privado es una instancia física de un teléfono o una tablet exclusivos de su cuenta. Los dispositivos privados pueden tener configuraciones personalizadas y estáticas, y ejecutar imágenes de sistemas operativos personalizadas. Todos los dispositivos se implementan en su nombre y se eliminan al final de su suscripción.

Cada uno de los dispositivos privados de su cuenta se considera una suscripción de dispositivo privado. El precio de la suscripción mensual se escalona sobre el costo del dispositivo y comienza a partir de 200 USD al mes. Una vez concluido el periodo de suscripción mínimo, podrá optar por cancelar la suscripción en cualquier momento. Contáctenos para obtener más información.

Sí. Cuando seleccione dispositivos para una serie de pruebas o sesión de acceso remoto, verá los dispositivos tanto públicos como privados. También puede crear grupos de dispositivos compuestos por dispositivos públicos y privados. Para obtener más información sobre los dispositivos privados, contáctenos.

Pruebas en navegadores de escritorio

Selenium es un marco de código abierto que automatiza la interacción de los navegadores web. Puede obtener más información sobre Selenium aquí.

Device Farm permite ejecutar sus pruebas de Selenium en diferentes navegadores de escritorio y en diferentes versiones de navegadores que se alojan en la nube de AWS. Device Farm sigue un modelo de ejecución del lado del cliente para las pruebas de Selenium, es decir, sus pruebas se ejecutan en su propia máquina local pero interactúan con navegadores alojados en AWS Device Farm a través de la API de Selenium.

Para comenzar, consulte nuestra guía de introducción aquí.

Todos los navegadores se alojan en las instancias EC2 de Windows, las cuales se ejecutan en el servidor de Microsoft Windows.

Puede ver la lista de navegadores de escritorio y de versiones de navegadores compatibles aquí.

Puede ver la lista de capacidades deseadas de Selenium que admite Device Farm aquí.

Device Farm genera registros de consola, registro de controladores web, registros de acciones y grabaciones de videos de toda la prueba para ayudarlo a resolver las fallas de prueba.

Sí. Device Farm admite la prueba de aplicaciones web en dispositivos móviles reales mediante el uso de Appium. Consulte nuestra guía para desarrolladores sobre las pruebas web con Appium para obtener más información. Tenga en cuenta que para realizar la prueba en dispositivos móviles reales, Device Farm sigue un modelo de ejecución del lado del servidor y, por lo tanto, deberá cargar sus pruebas al servicio.

Puede encontrar todos los límites de esta característica aquí.

Los precios dependen de los minutos de instancia, que se determinan a partir de la duración de las pruebas en cada instancia de navegador seleccionada. Se le cobrarán 0,005 USD por minuto de instancia de navegador.

Un minuto de instancia es la unidad de facturación para la prueba del navegador de escritorio en Device Farm. Los minutos de instancia son una medida del tiempo que se tarda (en minutos) en ejecutar las pruebas en cada instancia de navegador que seleccionó para la ejecución de su prueba. El precio unitario de 0,005 USD es constante independientemente del navegador o de la versión del navegador que haya seleccionado. No cobramos por el tiempo que tarda lanzar, iniciar o desconectar la instancia EC2 que aloja el navegador.