El reto más importante que nos enfrentamos a la hora de testear es la diversidad de dispositivos móviles y versiones de sistemas operativos.
Contar con todos los dispositivos reales y versiones del sistema operativo es difícil de lograr, generalmente se suele sacrificar la cobertura del testing, definiendo combinaciones de dispositivo y sistema operativo hasta cierto punto, pero cuando se reduce el número de tipos de dispositivos que se prueba, se aumenta la posibilidad de que la aplicación no funcione en ciertos clientes potenciales.
La mejor manera de lograr el equilibrio es combinando el uso de dispositivos reales con emuladores.
Los dispositivos reales tienen la ventaja de contar con todas las limitaciones y peculiaridades presentes en el sistema operativo del cliente real. Sin embargo las pruebas con dispositivos reales pueden ser costosas.
Los emuladores, por otro lado, son relativamente fáciles de manejar. Puede cambiar los tipos de dispositivos simplemente cargar un nuevo perfil de dispositivo, y al instante ya se tiene un nuevo dispositivo que se presenta a su aplicación móvil o web nativa de la misma manera que el dispositivo real haría.
También son muy útiles en términos de usabilidad, y especialmente el diseño, incluyendo la entrada de datos, tamaño de la pantalla, el uso de botones, etc – todo desde la comodidad de su propio ordenador portátil. Sin embargo, apuntando y haciendo clic con el ratón en un monitor de escritorio no es lo mismo que usar un dedo en una pantalla pequeña.
La gran desventaja de los dispositivos emulados es que carecen de las peculiaridades, fallas y características que sólo el dispositivo real puede proporcionar, ya que los mismos se ejecutan en PCs con procesadores más potentes que un Smartphone o tablet. Finalmente, un dispositivo emulado no es sensible a las condiciones ambientales que pueden afectar el comportamiento del dispositivo.
Afortunadamente, usted no está limitado a una selección para determinar la solución dispositivo adecuado para sus necesidades de pruebas móviles.
Un tercer enfoque es seleccionar una mezcla de ambos: usar emuladores y pruebas en dispositivos reales.
En este caso se sugiere comenzar a probar en un entorno emulado para aprovechar la velocidad y la diversidad que un emulador puede proporcionar. Y luego añadir dispositivos reales a su plan de pruebas para validar que las aplicaciones funcionen como se espera en el ambiente real que el usuario va a utilizar y certificar que se han cumplido todos los requisitos y objetivos de desarrollo.