Por Adrían Solís – Estudiante de la carrera de Ingeniería Informática
Los usuarios son el objetivo de cada app, ellos son los que interactúan con ella desde interactuar con bolones hasta descargar varios tipos de archivos, fotos, etc. Por eso es importante probar toda la variedad de casos de uso a medida que se crea la aplicación y se le va dando forma. Además de esto, se puede necesitar información de un servidor, sensores accesibilidad al almacenamiento local o interfaces complejas.
Existe dos tipos de pruebas: las locales y las instrumentadas. Las locales son cuando se realizan en una máquina local, se usan las máquinas virtuales para minimizar el tiempo de ejecución. Después existen las pruebas instrumentadas que son las que se llevan a cabo en dispositivos en los cuales se van a usar o en un emulador. Estos tienen acceso a información de instrumentación como el CONTEXT. Android requiere un espacio más sólido.
El rendimiento del UI no solo garantiza que cumpla con los requisitos, sino que la interacción con el usuario sea fluida y que funcione correcta y constantemente (esto es lo que se llama 60FPS), sin perdidas o retraso de fps. Dicho todo lo anterior, para dar una repasada rápida de aspectos importantes para crear una app para teléfonos, ahora vamos a pasar a cuáles son las herramientas de testeo para ver la app funcionando antes de que salga al mercado.
• Appium: Es de código abierto que ofrece pruebas automatizadas en cuanto a la interfaz de usuario en aplicaciones, tiene la opción de probarse en aplicaciones nativas, web o híbridas, y permite el test de nativas sin SDK o tener que recopilar. Se pueden desarrollar en un lenguaje compatible como WebDriver, Java, Objective-C o JS. También se le puede adjuntar Sauce Labs para tener acceso a pruebas en la nube.
• Testdroid: Para pruebas o monitoreo móvil como servicio en la nube pública o privada o también como un servicio de prueba onsite, este cuenta con una gran variedad de plataformas móviles tanto de Android como de IOS.
• Bugsee: Herramienta de monitoreo que registra el estado de algún sistema. Ofrece un archivo en el cual se pueden ver las fallas y se lo envía al administrador o desarrollador. En una compañía se considera como una “Caja negra” en cuanto al campo de las aplicaciones móviles, también este ofrece recopilación de fallas en sistemas Android, así como en IOS con la incorporación de SDK de Bungsee
• CrossBrowserTesting: Esta le da acceso al laboratorio de un dispositivo en la nube, ahorrando que los desarrolladores tengan que usar máquinas virtuales, ofrece laboratorios para dispositivos y pruebas en un multinavegador.
Todos los diferentes tipos de herramientas que vimos son muy útiles, pero es de cada uno ver cuál es la indicada para él. Además, cada una tiene diferentes características y funciones, lo que se puede interpretar como que un desarrollador no va a usar solo uno, sino que tiene que estar interactuando con otras para así ver más información y ver cómo se comporta la aplicación en varios tramos de desarrollo.