Pruebas móviles: guía rápida

Antes de comenzar con el tutorial real, divirtámonos. Eche un vistazo a la siguiente lista. Puede identificarse fácilmente con estas tareas esenciales que invariablemente tenemos que enfrentar en el estilo de vida ocupado y agitado de hoy:

  • Quiero pagar mi factura de luz.

  • Necesito comunicarme con mi gerente y enviar mis informes con urgencia.

  • Quiero comprar ropa nueva para mi hijo, pero no tengo tiempo para ir a una tienda.

  • Oh ... son las 10 PM; Llego tarde a mi vuelo. ¿Dónde está mi taxi?

  • He estado en esta ciudad por primera vez; que hotel debo reservar?

Ahora respóndete. ¿Qué necesitas para realizar estas actividades en una fracción de segundo? La respuesta sería

  • Un teléfono inteligente
  • Conectividad a Internet y
  • Una aplicación móvil para hacer el trabajo.

Esto nos hace darnos cuenta de la importancia de una aplicación móvil en la era actual. Todo se hace de forma inteligente a través de su teléfono inteligente. Cada día, conocemos el lanzamiento de una nueva aplicación o herramienta para facilitar nuestra vida.

Hay una incidencia bien conocida sobre Gowalla. Millones de personas disfrutaron de esta red social basada en la ubicación que comenzó en 2007 y cerró cinco años después. Múltiples problemas impidieron que Gowalla alcanzara un atractivo masivo. Una de las principales razones que surgieron fue "El registro no fue tan fácil de usar".

Para tener una aplicación móvil exitosa, debemos entender que desarrollar una buena aplicación móvil no es el único requisito. Una aplicación móvil debe probarse minuciosamente para lograr la simpatía de los usuarios. Después de todo, es la experiencia del usuario lo que hace que cualquier software sea exitoso.

Antes de pasar a las pruebas móviles, es recomendable comprender los conceptos básicos de las plataformas móviles. Incluye principalmente el sistema operativo del móvil, el tipo de dispositivo y el tipo de aplicación móvil. Tener el conocimiento suficiente sobre cada uno de estos nos ayudará a realizar una planificación de pruebas sólida a largo plazo.

Sistemas operativos móviles

La siguiente tabla ofrece una descripción general de algunos de los sistemas operativos móviles populares disponibles en el mercado:

Sistema operativo Desarrollado por Popularidad (baja, media, alta) Última versión disponible
Android Corporación Google Alto Piruleta, Android 5.0-5.1
iOS Apple Inc Alto iOS 8.X
Blackberry Blackberry Ltd Bajo Blackberry 10.2.1
Windows Microsoft Inc Medio Windows 10 móvil
Symbian Fundación Symbian Bajo Interrumpido

Según una encuesta genérica, el uso de diferentes sistemas operativos en el mercado se puede representar como se muestra a continuación.

Los dispositivos móviles suelen ser computadoras de mano. Tienen muchas variantes en función de sus características, como la dimensión física, la capacidad de hardware y software, para qué están destinados, etc.

Eche un vistazo a la siguiente tabla. Diferencia tabletas, lectores de libros electrónicos y teléfonos inteligentes en función de sus características.

Dispositivo Tabletas Lectores de libros electrónicos Teléfonos inteligentes
Lo que es Las tabletas son dispositivos informáticos portátiles. A diferencia de las computadoras tradicionales, no tienen teclados ni mouse, sin embargo, toda la pantalla es sensible al tacto. Los lectores de libros electrónicos, también llamados lectores electrónicos, son similares a las tabletas, excepto que están diseñados principalmente para leer libros electrónicos (libros digitales descargables). Un teléfono inteligente es un teléfono móvil poderoso que está diseñado para ejecutar una variedad de aplicaciones además de brindar servicio telefónico.
Usado para Casi todos los trabajos que podemos hacer con ordenadores o sobremesa tradicionales. Leer libros electrónicos Navegación web, visualización de videos, lectura de libros electrónicos y juegos
Ejemplo Tabletas Samsung Amazon Kindle, Barnes & Noble Nook. Teléfonos inteligentes Sony, teléfonos inteligentes Samsung, iPhone de Apple.

Un factor crítico que debe considerar al realizar la planificación de la prueba es verificar el tipo de aplicación móvil. Se encontrará principalmente con tres tipos de aplicaciones móviles: Web móvil, Aplicación nativa y Aplicación híbrida. La clasificación se basa en los esfuerzos de desarrollo y la estrategia de redistribución de la aplicación. Entendamos cada uno de ellos en detalle.

Web móvil

Las aplicaciones web no son aplicaciones reales; en realidad, son sitios web que se abren en su teléfono inteligente con la ayuda de un navegador web. Los sitios web móviles tienen la audiencia más amplia de todos los tipos principales de aplicaciones.

  • Example-

  • Benefits -

    • Fácil acceso.

    • Desarrollo fácil: desarrollar un diseño receptivo y reestructurar el contenido para que se muestre correctamente en una pantalla / hardware más pequeño hará que cualquier sitio web de escritorio sea compatible con dispositivos móviles.

    • Actualización fácil: solo actualice en una ubicación y todos los usuarios tendrán acceso automáticamente a la última versión del sitio.

    • No se requiere instalación, en comparación con la aplicación nativa o híbrida.

  • Downside -

    • Los sitios web móviles no pueden utilizar algunas de las funciones. Por ejemplo, el acceso al sistema de archivos y los recursos locales no está disponible en los sitios web.

    • Muchos sitios web existentes no admiten las funciones sin conexión.

    • Los usuarios no tendrán el icono de la aplicación en su pantalla de inicio como recordatorio constante. El sitio web solo debe abrirse en un navegador web.

    • Si bien las aplicaciones nativas e híbridas aparecen en App Store y Google Play, las aplicaciones web no. Entonces la redistribución no es tan sensata.

Aplicación nativa

Una aplicación nativa se desarrolla específicamente para una plataforma. Se puede instalar a través de una tienda de aplicaciones (como Google Play Store o App Store de Apple).

  • Example - Whatsapp, Facebook.

  • Benefits -

    • Las aplicaciones nativas viven en el dispositivo y se accede a ellas a través de iconos en la pantalla de inicio del dispositivo.

    • Pueden aprovechar al máximo todas las funciones del dispositivo: pueden usar la cámara, el GPS, el acelerómetro, la brújula, la lista de contactos, etc. También pueden incorporar gestos (gestos estándar del sistema operativo o gestos nuevos y definidos por la aplicación).

    • Las aplicaciones nativas pueden usar el sistema de notificación del dispositivo y pueden funcionar sin conexión.

    • Los editores pueden hacer uso de notificaciones push, que alertan a los usuarios cada vez que se publica un nuevo contenido o cuando se requiere su atención.

    • Las aplicaciones nativas mantienen el diseño de la interfaz de usuario de cada sistema operativo, por lo que ofrecen la mejor experiencia de usuario. Por ejemplo, una aplicación nativa puede tener un encabezado alineado a la izquierda en Android y un encabezado alineado al centro en iOS.

    • La redistribución es fácil, ya que se encuentra en la tienda de aplicaciones.

  • Downside -

    • Alto costo de creación de la aplicación: las aplicaciones nativas desarrolladas para una plataforma no se ejecutarán en otra plataforma. Una aplicación creada para Android no se ejecutará en iOS. Necesitamos crear una aplicación diferente para iOS. Por este motivo, necesitamos mantener varias versiones de la aplicación.

    • Aunque pueda publicar aplicaciones nativas, querrá mantener el sitio web móvil en buen estado, ya que los dispositivos móviles generan más tráfico. Entonces el mantenimiento es mayor.

Aplicación híbrida

Las aplicaciones híbridas son una forma de exponer contenido de sitios web existentes en formato de aplicación. Se pueden describir bien como una combinación de aplicación web y aplicación nativa.

  • Example - Instagram, Wikipedia.

  • Benefits -

    • Desarrollar una aplicación híbrida es más económico que desarrollar una aplicación nativa. Puede construirse para plataformas cruzadas, es decir, costo reducido para el desarrollo de aplicaciones.

    • El mantenimiento es simple, ya que no hay muchas versiones para mantener.

    • Puede aprovechar algunas funciones disponibles en el dispositivo.

    • Se puede encontrar en la App Store, lo que facilita la distribución.

    • Tiene un navegador integrado solo dentro de la aplicación.

  • Downside -

    • Los gráficos están menos acostumbrados al sistema operativo en comparación con las aplicaciones nativas.

    • Las aplicaciones híbridas son más lentas que las aplicaciones nativas.

Prueba de dispositivo

Este tipo de prueba generalmente se realiza para garantizar la calidad de un dispositivo móvil. Las pruebas incluyen pruebas de hardware y software para dispositivos móviles. Discutiremos aquí los diferentes tipos de pruebas que generalmente se llevan a cabo en dispositivos móviles.

Examen de la unidad

La prueba unitaria es una fase de prueba en la que el desarrollador prueba partes del desarrollo de un dispositivo móvil, generalmente. Puede contener pruebas de hardware, pruebas de software y pruebas mecánicas.

Prueba de fábrica

Las pruebas de fábrica son una especie de control de cordura en dispositivos móviles. Se realiza de forma automática para verificar que no existen defectos traídos por la fabricación o montaje. Incluye principalmente las siguientes pruebas:

  • Prueba de aplicaciones móviles
  • Pruebas de hardware
  • Prueba de batería (carga)
  • Recepción de señal
  • Prueba de red
  • Prueba de protocolo
  • Prueba de juegos móviles
  • Prueba de compatibilidad de software móvil

Pruebas de certificación

Las pruebas de certificación son la verificación antes de que un dispositivo móvil salga al mercado.

Prueba de aplicación

La prueba de aplicaciones móviles es un proceso mediante el cual se prueba la funcionalidad, usabilidad y consistencia de un software desarrollado para dispositivos móviles portátiles. Existen diferentes tipos de pruebas que se pueden realizar en un dispositivo móvil. Por ejemplo,

  • Pruebas funcionales
  • Prueba de laboratorio
  • Pruebas de rendimiento
  • Prueba de fuga de memoria
  • Prueba de interrupción
  • Pruebas de usabilidad
  • Prueba de instalación
  • Pruebas de certificación
  • Pruebas de seguridad

Puntos clave

  • Las pruebas de dispositivos generalmente se llevan a cabo para verificar el dispositivo móvil en sí, mientras que las pruebas de aplicaciones móviles implican probar una aplicación que se ejecutará en el dispositivo elegido.

  • Cuando lo llamamos prueba de dispositivos, la prueba de hardware se convierte en parte de ella. En el caso de las pruebas de aplicaciones móviles, depende, es decir, si la aplicación bajo prueba requiere integración de hardware, entonces estarán involucradas las pruebas de hardware.

  • La automatización es posible para las pruebas de dispositivos móviles, así como para las pruebas de aplicaciones móviles.

Una cosa se explica por sí misma en el caso de las pruebas móviles. Para realizar pruebas móviles, necesita un dispositivo móvil. Esto es para acceder a cómo funcionará y se verá nuestro producto en un conjunto móvil determinado.

Supongamos que estamos desarrollando una aplicación para el sistema de reserva de billetes de avión. Una vez que el producto está completamente desarrollado, como parte de las pruebas móviles, debemos verificar si la aplicación funciona como se esperaba con todos los dispositivos más utilizados, como teléfonos Android, iOS, teléfonos Blackberry y otros tipos diferentes de tabletas y iPads.

Para hacer este tipo de verificación, necesitamos adquirir cada uno de estos dispositivos y luego podemos verificar si la aplicación se comporta según las expectativas. Sí, lo pensó bien, como propietario de un producto, definitivamente, le resultará muy caro adquirir una cantidad tan grande de dispositivos móviles y realizar pruebas. Entonces, ¿hay alguna alternativa inteligente disponible?

La solución a este problema es utilizar simuladores móviles y emuladores móviles. Se trata principalmente de programas de software diseñados para proporcionar simulación de funciones importantes de un teléfono inteligente. Son de naturaleza muy similar, por lo que a veces, se usan indistintamente.

Comparemos en qué se diferencian las pruebas en un emulador / simulador de las pruebas en un dispositivo real:

Dispositivo real Emulador / Simulador
Precio Obtener dispositivos reales te costará mucho. Es casi gratis, solo necesitamos descargarlos e instalarlos
Velocidad de procesamiento Tiene un procesamiento más rápido; sin embargo, la latencia de la red puede ser normal. Es más lento en comparación con los dispositivos reales. Ha observado menos latencia que los dispositivos reales conectados a la red local o en la nube.
Depuración La depuración no es tan fácil. Proporciona depuración paso a paso de una aplicación. Además, proporciona una forma eficaz de realizar capturas de pantalla.
Pruebas de aplicaciones web Las aplicaciones web se pueden probar de forma normal. Probar una aplicación web es mucho más fácil.
Fiabilidad Las pruebas en un dispositivo real tienen la gran ventaja de que siempre dan resultados precisos. No puede simular todos los tipos de interacciones del usuario; por lo tanto, a veces puede dar lugar a resultados falsos. Por tanto, tiene una puntuación baja en lo que respecta a la fiabilidad.

Un simulador / emulador no puede imitar las siguientes características:

  • Batería del dispositivo móvil
  • Cámara del dispositivo móvil
  • Difícil de imitar interrupciones como llamadas entrantes y SMS.
  • Simulación no tan realista para el uso de la memoria del dispositivo móvil.

Ahora entendamos más sobre simuladores móviles y emuladores móviles. Hay diferencias específicas entre los dos. La siguiente tabla enumera las principales diferencias entre un simulador y un emulador.

Emulador Simulador
Que imita

Software de dispositivo móvil

Hardware de dispositivo móvil

Sistema operativo móvil

Comportamiento interno del dispositivo.

No imita al hardware.

Cómo conseguirlo Generalmente lo proporciona el fabricante del dispositivo. Generalmente lo proporciona el fabricante del dispositivo o alguna otra empresa.
Estructura interna Está escrito en lenguaje ensamblador a nivel de máquina. Está escrito en lenguaje de alto nivel.
Depuración Es más adecuado para depurar. No es adecuado para fines de depuración.
Actuación Los emuladores son realmente lentos. Emular el hardware real generalmente hace que el software se ejecute más lento de lo que lo haría de forma nativa. Más rápido que los emuladores.
Ejemplo SDK de Android de Google Simulador de iOS de Apple

Entonces, ¿cuál es la mejor opción para las pruebas móviles? Las mejores prácticas indican que, mientras el desarrollo real está en progreso, debemos usar un emulador o un simulador. Antes de finalizar el producto, debe haber una verificación de cordura con los dispositivos reales elegidos. Por ejemplo, hay una gran cantidad de usuarios de teléfonos inteligentes Android, por lo que la opción inteligente es tener una verificación de cordura para el último dispositivo Android y la regresión se puede realizar mediante simuladores.

Una definición simple de prueba de aplicaciones móviles sería así "Mobile application testing es un proceso por el cual un application softwaredesarrollado para dispositivos móviles portátiles se prueba por su funcionalidad, usabilidad y consistencia. Las pruebas de aplicaciones móviles pueden ser de tipo automático o manual ".

Note - Para una mejor comprensión, asumiremos que estamos probando una aplicación móvil para el sistema de reserva de boletos de avión en línea.

Pruebas funcionales

La prueba funcional es la prueba más básica para cualquier aplicación para garantizar que funciona según los requisitos definidos. Al igual que otras aplicaciones basadas en la interfaz de usuario, las aplicaciones móviles requieren una serie de interacciones humanas en escenarios de usuario.

Escenarios de prueba de ejemplo:

  • Verifique que se muestre la disponibilidad de vuelos para un destino de origen elegido solo en una fecha seleccionada.

  • Verifique que las fechas pasadas no estén incluidas en los resultados de la búsqueda.

Prueba de compatibilidad

Las pruebas de compatibilidad tienen la pila más alta cuando se trata de pruebas de aplicaciones móviles. El propósito de una prueba de compatibilidad de aplicaciones móviles, en general, es garantizar que las funciones clave de una aplicación se comporten como se espera en un dispositivo específico. La compatibilidad en sí solo debería llevar unos minutos y se puede planificar con mucha antelación.

No va a ser una tarea fácil, decidir qué pruebas de compatibilidad de dispositivos móviles se deben realizar (ya que probar con todos los dispositivos disponibles es simplemente imposible). Así que prepare una matriz de prueba con todas las combinaciones posibles y obtenga la prioridad del cliente.

Escenarios de prueba de ejemplo:

  • Verifique que la búsqueda de vuelos se realice correctamente con el dispositivo Android.
  • Verifique que la búsqueda de vuelos se haya realizado correctamente para el iPad de Apple.

Prueba de localización

Hoy en día, la mayoría de las aplicaciones están diseñadas para uso global y es muy importante preocuparse por los senderos regionales como idiomas, zonas horarias, etc. Es importante validar la funcionalidad de la aplicación cuando alguien cambia la zona horaria. Debe tenerse en cuenta que a veces los diseños occidentales pueden no funcionar con la audiencia de los países del este o viceversa.

Escenarios de prueba de ejemplo:

  • Verifique que no haya ningún problema de truncamiento de datos o interfaz de usuario cuando usamos la aplicación móvil con diferentes idiomas (o digamos, un idioma que no sea inglés).

  • Verifique que los cambios de zona horaria se manejen correctamente para su aplicación móvil.

Prueba de laboratorio

Las pruebas de laboratorio, generalmente realizadas por operadores de red, se realizan simulando la red inalámbrica completa. Esta prueba se realiza para descubrir cualquier problema técnico cuando una aplicación móvil utiliza la conexión de voz y / o datos para realizar algunas funciones.

Escenarios de prueba de ejemplo:

  • Verifique que no haya ningún problema mientras un cliente está conversando con el personal de soporte.

Pruebas de rendimiento

La prueba de rendimiento móvil cubre el rendimiento de la aplicación cliente, el rendimiento del servidor y el rendimiento de la red. Es importante asegurarse de que los escenarios de prueba de rendimiento cubran todas esas áreas. Con la ayuda de las herramientas de prueba de rendimiento, no es difícil identificar las redes, los servidores y los cuellos de botella de las aplicaciones del lado del servidor existentes, dadas las cargas predefinidas y la combinación de transacciones.

Escenarios de prueba de ejemplo:

  • Verifique que la verificación de disponibilidad de vuelos solo lleve un tiempo razonable.

  • Verifique que mientras se comprueba la disponibilidad de vuelos, el móvil funciona con normalidad y no se cuelga.

Pruebas de estrés

Las pruebas de estrés son imprescindibles para encontrar excepciones, bloqueos y puntos muertos que pueden pasar desapercibidos durante las pruebas funcionales y de interfaz de usuario. Aquí hay una lista de algunos de los criterios para las pruebas de resistencia:

  • Cargue su aplicación con la mayor cantidad de datos posible para intentar llegar a su punto de quiebre.

  • Realice las mismas operaciones una y otra vez.

  • Realice las operaciones repetidas a diferentes velocidades, muy rápido o muy lentamente.

  • Deje su aplicación ejecutándose durante un largo período de tiempo, tanto interactuando con el dispositivo como dejándolo inactivo, o realizando alguna tarea automática que lleve mucho tiempo, por ejemplo, una presentación de diapositivas.

  • Envíe al azar toques de pantalla y pulsaciones de teclas a su aplicación.

  • Tenga varias aplicaciones ejecutándose en su dispositivo para que pueda cambiar entre su aplicación y otras aplicaciones del dispositivo con frecuencia.

Escenarios de prueba de ejemplo:

  • Compruebe que 1000 usuarios están accediendo a la aplicación móvil para buscar vuelos nacionales.
  • Compruebe que 1000 usuarios están accediendo a la aplicación móvil para buscar vuelos nacionales.

Pruebas de seguridad

Las vulnerabilidades a las políticas de piratería, autenticación y autorización, seguridad de datos, administración de sesiones y otros estándares de seguridad deben verificarse como parte de las pruebas de seguridad de aplicaciones móviles. Las aplicaciones deben cifrar el nombre de usuario y las contraseñas al autenticar al usuario en una red.

Una forma de probar escenarios relacionados con la seguridad es enrutar los datos de su dispositivo móvil a través de un servidor proxy como OWASP Zed Attack Proxy y buscar vulnerabilidades.

Escenarios de prueba de ejemplo:

  • Verifique que la aplicación no se opere con las mismas credenciales de usuario en dos dispositivos móviles diferentes.

  • Verifique que una sesión caduque automáticamente si permanece inactiva durante más de 15 minutos.

Prueba de fuga de memoria

Los dispositivos móviles tienen una memoria muy limitada en comparación con otras computadoras, y los sistemas operativos móviles tienen un comportamiento predeterminado para terminar las aplicaciones que usan memoria excesiva y causan una mala experiencia de usuario.

Las pruebas de memoria son excepcionalmente importantes para las aplicaciones móviles a fin de garantizar que cada aplicación mantenga un uso optimizado de la memoria durante todo el recorrido del usuario. Se recomienda que realicemos pruebas de memoria en el dispositivo de destino real, ya que la arquitectura del sistema es diferente de un emulador a un dispositivo real.

Escenarios de prueba de ejemplo:

  • Realice comprobaciones de disponibilidad de vuelos diez veces y anote el aumento del uso de memoria para cada comprobación.

  • Mantenga la aplicación ejecutándose durante diez minutos y observe si el uso de la memoria permanece estable.

Prueba de consumo de energía

Hay varios tipos de baterías que se utilizan en diferentes dispositivos móviles (es decir, níquel cadmio / iones de litio / híbrido de níquel metal). Si bien nos enfocamos en las pruebas de consumo de energía, debemos medir el estado de la batería en cada nivel de actividad. Nos dará una mejor comprensión del consumo de energía de una aplicación individual.

La prueba de consumo de energía se puede realizar manualmente; También hay algunas herramientas gratuitas disponibles en el mercado como Trepn Profiler, Power Tutor y Nokia Energy Profiler. Estas son aplicaciones que pueden mostrar el consumo de energía en tiempo real en un teléfono inteligente o tableta.

Escenarios de prueba de ejemplo:

  • Use la aplicación móvil para buscar disponibilidad de vuelos y verifique que el consumo de energía sea mínimo.

  • Mantenga la aplicación móvil en condiciones ideales; Verifique que no haya consumo de energía cuando no haya actividad en la aplicación.

Prueba de interrupción

Una aplicación, mientras funciona, puede enfrentarse a varias interrupciones, como llamadas entrantes o interrupción y recuperación de la cobertura de la red. Esto nuevamente se puede distinguir por:

  • SMS y MMS entrantes y salientes
  • Llamadas entrantes y salientes
  • Notificaciones entrantes
  • Extracción de la batería
  • Inserción y extracción de cables para transferencia de datos

Escenarios de prueba de ejemplo:

  • Verifique que la verificación de disponibilidad de vuelos se pausa y se reanuda después de recibir una llamada entrante.

  • Verifique que el usuario pueda rechazar una llamada mientras usa la aplicación y luego reanudar la misma aplicación.

Pruebas de usabilidad

Las pruebas de usabilidad evalúan la aplicación en función de los siguientes tres criterios para el público objetivo:

  • Efficiency - La precisión e integridad con la que los usuarios especificados pueden lograr objetivos específicos en un entorno particular.

  • Effectiveness - Los recursos gastados en relación con la precisión e integridad de los objetivos alcanzados.

  • Satisfaction - La comodidad y aceptabilidad del sistema de trabajo para sus usuarios y otras personas afectadas por su uso.

Es muy importante implementar las pruebas de usabilidad desde la etapa inicial del diseño de la aplicación, y no debe realizarse solo cuando la aplicación está completa. Las pruebas de usabilidad requieren una gran participación de los usuarios y el resultado puede afectar el diseño de la aplicación, que es muy difícil de cambiar en las últimas etapas del proyecto.

Escenarios de prueba de ejemplo:

  • La verificación de disponibilidad de vuelos debe estar en la página de inicio.
  • Los anuncios patrocinados no deben mostrarse en medio del contenido.

Prueba de instalación

Las pruebas de instalación verifican que el proceso de instalación se desarrolle sin problemas sin que el usuario tenga que enfrentarse a ninguna dificultad.

Escenarios de prueba de ejemplo:

  • Verifique que el proceso de instalación sea fluido y no lleve mucho tiempo.
  • Verifique que la instalación sea exitosa a través de la tienda de aplicaciones empresariales.

Prueba de desinstalación

Los conceptos básicos de las pruebas de desinstalación se pueden resumir en una línea como "La desinstalación debería eliminar los datos relacionados con la aplicación de una sola vez".

Escenarios de prueba de ejemplo:

  • Verifique que todos los archivos relacionados con la aplicación se eliminen correctamente después de la desinstalación.

  • Si es una aplicación que almacena archivos multimedia (como Whatsapp o Facebook), conserve los archivos incluso después de la desinstalación de la aplicación.

Pruebas de actualizaciones

Debemos tener mucho cuidado con las actualizaciones de aplicaciones móviles. La gente se queja con frecuencia de que las aplicaciones no funcionan satisfactoriamente después de una actualización. Por eso es muy importante que bajo las pruebas de actualización, califiquemos que la aplicación funcionará como lo hacía anteriormente. En pocas palabras, no debe romper nada. Las actualizaciones de aplicaciones móviles se pueden realizar de dos formas:Automatic update y Manual update.

Escenarios de prueba de ejemplo:

  • Verifique que la aplicación funcione correctamente después de la actualización automática.
  • Verifique que el progreso de la actualización se muestre correctamente.

Pruebas de certificación

Para obtener un certificado de cumplimiento, cada dispositivo móvil debe probarse según las pautas establecidas por diferentes plataformas móviles.

Escenarios de prueba de ejemplo:

  • Verifique que la aplicación cumpla con la política de los teléfonos iOS cuando se instale en el iPhone.

  • Verifique que la aplicación cumpla con la política de los teléfonos Android cuando se instala en Android.

Suponga que estamos usando una aplicación móvil y, curiosamente, experimenta la siguiente situación:

  • Falta la alineación del botón.
  • El texto se está recortando.
  • El control del calendario se está recortando.

De hecho, esta es una experiencia desagradable para cualquiera de los usuarios. Para asegurarnos de brindar una excelente experiencia a nuestros usuarios, se recomienda encarecidamente la prueba de interfaz de usuario móvil.

La primera área para explorar en su plan de prueba es la interfaz de usuario. Es su trabajo como evaluador confirmar que su aplicación cumple con ciertas expectativas, tales como:

  • Esquema de color general / tema del dispositivo
  • Estilo y color de los iconos
  • Indicadores de progreso cuando se cargan las páginas
  • Menús y cómo se invocan y los elementos típicos que contienen
  • Capacidad de respuesta general de las aplicaciones en este dispositivo

Analicemos más sobre los conceptos básicos de las pruebas de interfaz de usuario móviles.

Orientación / resolución de pantalla

El contenido web debe verse y sentirse bien en una amplia variedad de dispositivos y condiciones de red. Por lo general, es una buena idea probar su página web con las resoluciones de pantalla de uso común para que pueda estar seguro de que su página es utilizable.

Si tiene un diseño de varias columnas, es posible que también desee verificar que sus columnas se alineen correctamente y aún se puedan ver cuando su visitante tiene una resolución más baja. También es importante conocer las resoluciones de pantalla estándar:

  • 640 × 480
  • 800 × 600
  • 1024 × 768
  • 1280 × 800
  • 1366 × 768
  • 1400 × 900
  • 1680 × 1050

Herramientas disponibles

Hay bastantes herramientas disponibles en el mercado para hacer que las pruebas de IU móviles sean más fluidas y sencillas. Por ejemplo

  • Extensión de Google Chrome
  • Screenfly
  • Pila de navegador

Entendamos un poco más sobre estas herramientas y su utilidad.

Extensión de Google Chrome

Es una función gratuita disponible con el navegador web Google Chrome. Aquí hemos dado una explicación paso a paso de cómo probar la web móvil con la extensión de Google Chrome:

Step 1 - Abra el sitio web que se está probando en el "navegador web Google Chrome".

Step 2- Presione F12. Abrirá la ventana de la herramienta del desarrollador, como se muestra en la siguiente captura de pantalla.

Step 3- Haga clic en el icono similar al dispositivo móvil. Consulte la siguiente captura de pantalla.

Step 4- Seleccione el dispositivo móvil con el que desea probar el sitio web. Puede elegir los diferentes dispositivos disponibles para realizar la verificación de la interfaz de usuario.

Screenfly

Screenfly es una herramienta gratuita y fácil de usar. Para usar esto, solo necesita escribir Quirktools en su navegador web. Verá la siguiente pantalla.

Ingrese al sitio web bajo prueba y haga clic en Go. Seleccione el dispositivo móvil en el que desea ver el sitio web.

BrowserStack

Es otra gran herramienta para realizar pruebas de interfaz de usuario móvil. Proporciona resultados maravillosos. Aunque es una herramienta de pago, puede aprovechar una ruta gratuita registrándose en BrowserStack con una dirección de correo electrónico válida.

Pantallas táctiles

Pantallas multitáctiles frente a pantallas de un solo toque

Si su dispositivo y aplicación admiten funciones multitáctiles, como el efecto de pellizcar para hacer zoom en el iPhone, asegúrese de incluir muchos casos de prueba que impliquen tocar la pantalla en más de un lugar simultáneamente, especialmente mientras se escribe en el teclado virtual.

Toque largo vs toque corto

Si bien no existe el concepto de un doble clic en dispositivos de pantalla táctil (aunque podría haberlo, si se implementa específicamente en su aplicación), algunos dispositivos, como los teléfonos inteligentes Android, distinguen entre toques largos y toques cortos. Al presionar y mantener presionado un elemento, aparecerá un menú contextual en el medio de la pantalla, mientras que al hacer clic corto en el mismo elemento, se realizará automáticamente la primera acción en ese menú contextual.

Tamaño y posición del botón

Asegúrese de que los botones e íconos sean lo suficientemente grandes y lo suficientemente alejados de los bordes de la pantalla para que un dedo grande pueda hacer clic en ellos fácilmente.

Teclas blandas y duras

Teclados blandos

A menudo, hay varios casos especiales y casos de esquina que son importantes para los usuarios finales.

  • ¿Aparece automáticamente el teclado virtual si la acción principal del usuario es ingresar algún texto?

  • ¿La primera capa del teclado virtual incluye las teclas de método abreviado "@" y ".com" si el campo resaltado es para ingresar direcciones de correo electrónico?

  • ¿Se puede descartar el teclado virtual y volver a mostrarlo fácilmente?

  • ¿Se pueden utilizar indistintamente los teclados duro y blando (si el dispositivo tiene ambos)?

Teclas duras

Asegúrese de incluir muchas pruebas sobre el uso de las teclas físicas disponibles del dispositivo, como Inicio, Inicio, Menú y Atrás. Todos estos deberían interactuar con su aplicación de manera similar a como interactúan con las aplicaciones nativas del dispositivo.

Trackballs, ruedas de seguimiento y paneles táctiles

Si su dispositivo no tiene una pantalla táctil, es aún más importante verificar que la navegación por la pantalla sea lo más sencilla posible para el usuario. En estos casos, el usuario puede confiar en una bola de seguimiento, una rueda de seguimiento o un panel táctil para moverse de un objeto a otro.

Probar dispositivos móviles como teléfonos, tabletas y lectores electrónicos requiere equipo y metodología especiales. Dado que el software tradicional de captura de pantalla de escritorio no puede capturar adecuadamente las interacciones táctiles, los profesionales de la usabilidad han estado utilizando cámaras colocadas estratégicamente para registrar las interacciones de las pruebas de usabilidad en estos dispositivos móviles.

Preparación para realizar pruebas de dispositivos móviles

Las metodologías y dispositivos para facilitar las pruebas de usabilidad en teléfonos, tabletas y lectores electrónicos continúan desarrollándose. Al planificar las pruebas de dispositivos móviles, debe tener en cuenta los siguientes puntos:

  • Your timeframe and budget. Tener una buena comprensión del plazo y el presupuesto lo ayudará a determinar qué procesos y equipos funcionarán mejor en función de sus necesidades.

  • The physical setup of the space and how you will capture the test. Esto puede variar desde una disposición de menor fidelidad hasta el uso de una plataforma y un dispositivo de cámara especializados y / o quizás el uso de un software de seguimiento ocular.

  • Your target audience and devices.Utilice la analítica web para comprobar cuántos usuarios de dispositivos móviles visitan el sitio, qué dispositivo utilizan y su sistema operativo. Comprender esta información le ayudará a saber qué dispositivos probar.

Otro aspecto importante a cubrir después de la planificación de la prueba es test device management. En una organización grande, el manejo de las pruebas de dispositivos móviles necesita una forma inteligente de proteger los datos confidenciales de la organización. Para hacer esto, necesitará un software de seguridad. En la siguiente sección, comprenderemos más sobre las herramientas de administración de dispositivos.

Herramientas de administración de dispositivos

La administración de dispositivos móviles (MDM) es un tipo de software de seguridad que se usa en TI para monitorear, administrar y proteger los dispositivos móviles de los empleados que se implementan en múltiples proveedores de servicios móviles y en múltiples sistemas operativos móviles que se utilizan en la organización.

MDM a menudo se combina con servicios y herramientas de seguridad adicionales, como la Gestión de aplicaciones móviles, para crear una solución completa de Gestión de movilidad empresarial de seguridad y dispositivos móviles.

Hay muchas herramientas disponibles en el mercado para hacer este trabajo. La siguiente tabla proporciona una descripción general de algunas de las herramientas más populares y sus características.

Productos BlackBerry MDM Citrix MDM Dell MDM IBM MDM MobileIron MDM SOTI MDM
Androide 2.3+ si si si 2.3 a través de la corriente si
iOS 5.0+ si si si 4.0 a través de corriente si
Telefono windows No para BES10 (WP 8+ para BES12) si si si 7 a través de la corriente si
Mora Sí, BBOS, BlackBerry 10 si No si 10 (a través de ActiveSync) No
Symbian No si No si No No
SO Windows No si si si 8.1 RT / Pro No
Mac OS X No Próximamente si si León, León de montaña si
Otro No Windows Mobile Ninguna Office 365, Gmail, Lotus Ninguna Windows Mobile, CE, integrado
Configurar / deshabilitar WiFi si si si si si si
Cifrado de dispositivo si si Sí, depende del tipo de dispositivo si si si
Cifrado de correo electrónico si si Sí, depende del tipo de dispositivo si si si
Autenticación multifactor si si No si si si
Detección de malware No No No si Sí, con integración de socios si
Cortafuegos si No No si Sí, con integración de socios si
Separar los datos del usuario de los datos corporativos si si si si si si

Antes de seguir adelante con las pruebas reales de dispositivos móviles, es muy importante tener una idea de la arquitectura del hardware del dispositivo móvil. Esto nos ayudará a planificar mejor las pruebas cuando pasemos realmente a las pruebas de dispositivos móviles / aplicaciones de dispositivos móviles. Echemos un vistazo a las diferentes características del hardware de los dispositivos móviles.

Componentes de hardware

Si toma cualquier teléfono celular, la mayoría de las veces constará de las siguientes partes.

Placa de circuito

Puede considerarse como el cerebro del teléfono que controla todas sus actividades.

Pantalla táctil

Las pantallas táctiles son un componente vital de los teléfonos inteligentes. Las pantallas táctiles reconocen en qué parte de la pantalla ha colocado el dedo o el lápiz y comunican las coordenadas a la CPU del teléfono en consecuencia.

Hay dos tipos populares de pantallas táctiles:

  • Resistive Touchscreen- Tiene dos capas (separadas por un minúsculo espacio) que forman una superposición sobre la pantalla. Cuando se coloca un dedo en cualquier punto de la pantalla, los dos forman un contacto y se obtienen las coordenadas. Estos son relativamente económicos y se encuentran con razón en la mayoría de los teléfonos económicos. La desventaja es que se requiere cierta presión para registrar un toque. A medida que pasa el tiempo, se produce cierto grado de daño en la pantalla.

  • Capacitive Touchscreen- Tiene toda la pantalla recubierta con una sustancia capacitiva que retiene una cierta cantidad de carga eléctrica. Cuando se coloca un objeto conductor como un dedo en la pantalla, hay un cambio en la capacitancia en ese punto y así se obtienen las coordenadas. Las pantallas táctiles capacitivas no responden bien en climas fríos donde el dedo humano no causa un cambio en la capacitancia, por lo que se recomienda un lápiz óptico para tales escenarios. Entonces haymulti-touch touchscreensdonde casi todos los dedos se pueden señalar con precisión. Esto ha llevado a un aumento en la cantidad de gestos que se pueden realizar en una pantalla táctil.

Tarjeta de memoria

Las tarjetas de memoria vienen en diferentes tamaños y capacidades. Se utilizan ampliamente como dispositivo de almacenamiento de datos para almacenar información digital.

Tarjeta SIM

Una tarjeta SIM proporciona movilidad personal para que el usuario pueda tener acceso a todos los servicios suscritos independientemente de la ubicación del terminal y del uso de un terminal específico. Debe insertar la tarjeta SIM en otro teléfono celular GSM para recibir llamadas en ese teléfono, realizar llamadas desde ese teléfono o recibir otros servicios suscritos.

Batería

Los teléfonos inteligentes funcionan con una variedad de baterías diferentes según el fabricante del teléfono, sus dimensiones y características. Para aquellos que dependen en gran medida de sus teléfonos inteligentes, es importante que las baterías sean lo más duraderas posible. Esto elimina la necesidad de recargarlos con frecuencia y hace menos probable que se agoten cuando más se necesitan.

UDID para iOS

Cada iPhone o iPod Touch tiene un identificador de dispositivo único (UDID), que es una secuencia de 40 letras y números que es específica de su dispositivo. Es como un número de serie pero mucho más difícil de adivinar. Se verá más o menos así: 2b6f0cc904d137be2e1730235f5664094b831186.

¿Cómo encontrar su UUID?

  • Conecte su dispositivo iOS a su computadora.
  • Abre iTunes.
  • En iTunes, haga clic en el nombre del dispositivo en "Dispositivos" en la columna de la izquierda.
  • Haga clic una vez en el número de serie del dispositivo en la sección principal de la ventana.
  • El número de serie debería cambiar al UDID del dispositivo.

Perfil de aprovisionamiento para iOS

Un perfil de aprovisionamiento es una colección de entidades digitales que vincula de manera única a los desarrolladores y dispositivos con un equipo de desarrollo de iPhone autorizado y permite que un dispositivo se utilice para realizar pruebas. Se debe instalar un perfil de aprovisionamiento de desarrollo en cada dispositivo en el que desee ejecutar el código de su aplicación.

¿Cómo crear un perfil de provisión para iOS?

  • Ejecute Google Chrome, Mozilla Firefox o Safari.

  • En iOS Dev. Centro, haga clic en Certificados, identificadores y perfiles.

  • En el panel Aplicaciones de iOS, haga clic en Perfiles de aprovisionamiento.

  • Haga clic en +.

  • Seleccione Desarrollo de aplicaciones iOS y haga clic en Continuar.

  • Seleccione una ID de aplicación para asociarla con el perfil de aprovisionamiento y haga clic en Continuar.

  • Para poder utilizar un perfil de aprovisionamiento de desarrollo en varias aplicaciones, seleccione un ID de aplicación comodín, si está disponible.

  • Seleccione uno o más certificados para el desarrollo para incluirlos en el perfil de aprovisionamiento y haga clic en Continuar.

  • Solo se enumeran los certificados para desarrollo.

  • Seleccione uno o más dispositivos para incluir en el perfil de aprovisionamiento y haga clic en Continuar.

  • Ingrese un nombre para el perfil y haga clic en Generar.

  • (Opcional) Haga clic en Descargar para descargar el perfil de aprovisionamiento.

¿Cómo agregar su perfil de aprovisionamiento en AppBuilder?

  • Haga clic en el icono de la rueda dentada y seleccione Opciones.

  • Seleccione iOS → Perfiles de aprovisionamiento.

  • Haga clic en Importar.

  • Busque la ubicación donde se almacena el archivo de aprovisionamiento móvil para su perfil de aprovisionamiento, selecciónelo y confirme la importación.

Opciones y preferencias del dispositivo

Puede especificar una preferencia de dispositivo (móvil o todo) para cualquier anuncio de texto, de búsqueda dinámica, con imágenes o de display.

Si un grupo de anuncios tiene anuncios regulares y preferidos para dispositivos móviles, solo los anuncios preferidos para dispositivos móviles se publican en dispositivos móviles y solo los anuncios normales se publican en computadoras y tabletas.

En la lista de tipos, seleccione Anuncios y extensiones y elija el tipo de anuncio que desea actualizar. Seleccione uno o más anuncios. En "Preferencia de dispositivo" en el panel de edición, seleccione Móvil o Todos.

Veamos los detalles de los diferentes tipos de pruebas que podemos realizar en los dispositivos móviles.

Conexiones de red

La siguiente tabla proporciona una lista de verificación de las pruebas de conexión de red que se pueden realizar para un dispositivo móvil.

No Señor. Descripción
1 ¿La aplicación se comporta de acuerdo con las especificaciones si está conectada a Internet a través de Wi-Fi?
2 ¿La aplicación se comporta de acuerdo con las especificaciones si está conectada a Internet a través de 3G?
3 ¿La aplicación se comporta de acuerdo con las especificaciones si está conectada a Internet a través de 2G?
4 ¿La aplicación se comporta de acuerdo con las especificaciones de la aplicación que está fuera del alcance de la red?
5 ¿La aplicación vuelve a funcionar cuando vuelve al alcance de la red desde fuera del alcance de la red?
6 Las transacciones de actualización se procesan correctamente después de restablecer la conexión.
7 ¿La aplicación sigue funcionando correctamente cuando se conecta o se conecta de otra manera a otro dispositivo?
8 ¿Qué sucede si la aplicación cambia entre redes (Wi-Fi, 3G, 2G)?
9 ¿La aplicación utiliza puertos de red estándar (Correo: 25, 143, 465, 993 o 995 HTTP: 80 o 443 SFTP: 22) para conectarse a servicios remotos, ya que algunos proveedores bloquean ciertos puertos?

Interacciones de la tarjeta SD

La siguiente tabla proporciona una lista de verificación para verificar las funciones principales de la interacción de la tarjeta SD con un teléfono móvil.

No Señor. Descripción
1 ¿Se puede instalar la aplicación en el dispositivo?
2

¿La aplicación se comporta según lo diseñado / deseado si hay una llamada entrante?

3 ¿La aplicación se comporta según lo diseñado / deseado si hay un SMS entrante?
4 ¿La aplicación se comporta según lo diseñado / deseado si el cargador está conectado?
5 ¿La aplicación se comporta según lo diseñado / deseado si el cargador está desconectado?
6 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo pasa al modo de suspensión?
7 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se reanuda desde el modo de suspensión?
8 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se reanuda desde la pantalla de bloqueo?
9 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo está inclinado?
10 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se agita?
11 ¿La aplicación se comporta según lo diseñado / deseado si un mensaje local proviene de otra aplicación (piense en: recordatorios de calendario, tareas pendientes, etc.)?
12 ¿La aplicación se comporta según lo diseñado / deseado si un mensaje push proviene de otra aplicación (piense en: menciones de Twitter, mensaje de Whatsapp, invitación de Wordfeud, etc.)
13 ¿La aplicación interactúa correctamente con el sensor GPS (encender / apagar, recuperar datos GPS)?
14 ¿Está definida la funcionalidad de todos los botones o teclas del dispositivo para esta aplicación?
15 Verifique que los botones o teclas que no tienen una función definida no tengan un comportamiento inesperado en la aplicación al activarse.
dieciséis En caso de que haya un verdadero botón "atrás" disponible en el dispositivo, ¿el botón "atrás" lleva al usuario a la pantalla anterior?
17 En caso de que haya un verdadero botón de "menú" disponible en el dispositivo, ¿el botón de menú muestra el menú de la aplicación?
18 En caso de que haya un verdadero botón de "inicio" disponible en el dispositivo, ¿el botón de inicio lleva al usuario a la pantalla de inicio del dispositivo?
19 En caso de que haya un verdadero botón de "búsqueda" disponible en el dispositivo, ¿esto lleva al usuario a alguna forma de búsqueda dentro de la aplicación?
20 ¿Se comporta la aplicación según lo diseñado / deseado si se muestra el mensaje "Batería baja"?
21 ¿La aplicación se comporta como fue diseñada / deseada si el sonido en el dispositivo está apagado?
22 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo está en modo avión?
23 ¿Se puede desinstalar la aplicación del dispositivo?
24 ¿Funciona la aplicación como se esperaba después de la reinstalación?
25 ¿Se puede encontrar la aplicación en la tienda de aplicaciones? (Verificar después de la puesta en marcha)
26 ¿Puede la aplicación cambiar a diferentes aplicaciones en el dispositivo a través de la multitarea según lo diseñado / deseado?
27 ¿Funcionan todas las posiciones (botones) de la pantalla táctil cuando se utiliza un protector de pantalla?

Prueba de Bluetooth

Los dispositivos Bluetooth solo pueden comunicarse dentro del radio de 10 metros. Dichos dispositivos pueden ser teclados, mouse, auriculares inalámbricos, etc. La siguiente tabla proporciona una lista de verificación de las pruebas de Bluetooth que se pueden realizar:

No Señor. Descripción
1 El usuario puede buscar todos los dispositivos disponibles en el rango.
2 Tanto las transmisiones de datos como las de voz se pueden enviar mediante el uso de redes de corto alcance.
3 Tanto las transmisiones de datos como las de voz se pueden recibir mediante el uso de redes de corto alcance.
4 El usuario puede desconectarse en cualquier momento.
5 Mientras cierra Bluetooth, solicite desconectar las conexiones actuales.
6 El alcance máximo de Bluetooth es de 10 metros.
7 A través del teléfono móvil, puede enviar fotos, videos, intercambiar tarjetas de presentación y también transferir archivos a su PC.
8 (Dispositivo emparejado) este es un mensaje que se utiliza para confirmar que un usuario ha emparejado correctamente dos dispositivos Bluetooth.
9 Modo no detectable, un dispositivo que no responderá a las solicitudes de descubrimiento.
10 Modo no detectable, un dispositivo que no responderá a las solicitudes de descubrimiento.
11 Modo no emparejable: se dice que un dispositivo que no acepta emparejamiento está en modo no emparejable.
12 Contraseña, una contraseña es una contraseña definida por el usuario necesaria para conectarse a un dispositivo desde cualquier otro dispositivo. Se recomienda encarecidamente utilizar claves de paso siempre que sea posible para evitar el acceso no autorizado a sus dispositivos Bluetooth.
13 Autenticación: proceso de verificación de la identidad del otro extremo de un enlace de comunicaciones. En la tecnología Bluetooth, esto se logra mediante el proceso de autenticación basado en claves de acceso y emparejamiento.
14 Dispositivos no encontrados, este es un mensaje de error que puede aparecer si una búsqueda de otros dispositivos en el rango no encuentra nada.
15 Modo inactivo, un dispositivo está en modo inactivo cuando no tiene vínculos establecidos con otros dispositivos. En este modo, un dispositivo puede descubrir otros dispositivos.
dieciséis Prueba de dispositivo conocido, un dispositivo que ya conoce otro dispositivo. O los dispositivos se han emparejado en el pasado o se almacena alguna información de los dispositivos conocidos.

Prueba de Wi-Fi

Probar la conexión WiFi de su teléfono móvil es una excelente manera de asegurarse de que su Internet esté funcionando a la velocidad prometida por su proveedor de servicios, pero no está limitado a ejecutar esas pruebas en su computadora de escritorio. La prueba de WiFi de teléfonos móviles es una manera perfecta de probar la potencia de su señal WiFi en varios lugares de su hogar u oficina. A continuación se muestra la lista de verificación de prueba de Wifi para un dispositivo móvil.

No Señor. Descripción
1 ¿La aplicación se comporta de acuerdo con las especificaciones si está conectada a Internet a través de Wi-Fi?
2 ¿La aplicación se comporta de acuerdo con las especificaciones de la aplicación que está fuera del alcance de la red?
3 ¿La aplicación vuelve a funcionar cuando vuelve al alcance de la red desde fuera del alcance de la red?
4 ¿Qué sucede si la aplicación cambia entre redes (Wi-Fi, 3G, 2G)?
5 ¿La aplicación utiliza puertos de red estándar (Correo: 25, 143, 465, 993 o 995 HTTP: 80 o 443 SFTP: 22) para conectarse a servicios remotos, ya que algunos proveedores bloquean ciertos puertos?

Cómo ejecutar una prueba de velocidad WiFi de teléfono móvil en su teléfono inteligente

Realizar una prueba de velocidad WiFi en su teléfono inteligente es una tarea sencilla. Las más convenientes son las pruebas de velocidad que se ejecutan en el navegador web móvil de su teléfono inteligente. Simplemente siga las sencillas instrucciones en pantalla para comenzar la prueba. Si la prueba en línea no guarda sus resultados, tome una captura de pantalla después de finalizar la prueba para proporcionar un historial.

Algunas pruebas están disponibles como aplicaciones para las plataformas iOS y Android. Para usarlos, descargue la aplicación que desee. Luego siga las instrucciones para ejecutar la prueba y guardar su resultado.

Herramientas para realizar la prueba de velocidad

Speed Test SpeedSmart WiFi & Mobile Network Speedtest- Es compatible con iPhone y iPad de Apple. Es una aplicación de pago. SpeedSmart es la última utilidad de prueba de velocidad de iOS para evaluar su conexión celular (3G, 4G y LTE) y Wi-Fi en todos sus dispositivos iOS. Una red de servidores global y un método de prueba de velocidad inteligente garantizan resultados precisos.

WiFi Speed Test- Es compatible con teléfonos Android. Es una herramienta de pago. Con esta herramienta, puede probar la velocidad de su red local (LAN). Las pruebas se pueden realizar en una red inalámbrica (WiFi) o cableada.

Localización y globalización

Consulte la lista de verificación a continuación para tener una idea sobre las pruebas de localización y globalización para un dispositivo móvil.

No Señor. Descripción
1 Se traduce el texto.
2 Las traducciones cumplen con los estándares de los hablantes nativos con respecto a la gramática y la precisión de la terminología.
3 Los cuadros de diálogo se redimensionan correctamente y el texto del cuadro de diálogo se divide con guiones de acuerdo con las reglas del idioma de la interfaz de usuario.
4 Los cuadros de diálogo, las barras de estado, las barras de herramientas y los menús traducidos caben en la pantalla con distintas resoluciones. No se envuelven ni se cortan.
5 Los aceleradores de menú y diálogo son únicos.
6 El diseño visual es consistente con el diseño de la edición nativa. Por ejemplo, los elementos del diálogo están en el orden de tabulación adecuado.

Prueba de base de datos

Hay diferentes formas de almacenar datos en aplicaciones móviles. En el caso de Android, puede optar por almacenar sus datos en el servidor, Preferencias compartidas o SQLite.

SQLitees una base de datos liviana que se usa comúnmente en Android y otros sistemas operativos también. Para ver datos en SQLite, es posible que deba rootear el dispositivo o puede usar emuladores para realizar pruebas. Hay algunas herramientas en Android Playstore que lo ayudarían a extraer datos de esta base de datos.

Los siguientes tipos de pruebas deben formar parte de las pruebas de su base de datos móvil:

  • Pruebas de validación de bases de datos.
  • Pruebas de integración de bases de datos.
  • Prueba de rendimiento de la base de datos.
  • Prueba de procedimiento y funcionamiento.
  • Prueba de activación.
  • Pruebas de operaciones CRUD (Crear / Leer / Actualizar / Eliminar) para asegurarse de que funcionarán en la base de datos.
  • Probando que los cambios de la base de datos se muestren correctamente en la interfaz de usuario de la aplicación.
  • Prueba de función de búsqueda e indexación.

Prueba de recuperación

Las pruebas de recuperación se utilizan para garantizar que las operaciones puedan continuar después de un desastre. Las pruebas de recuperación no solo verifican el proceso de recuperación, sino también la eficacia de los componentes de ese proceso.

La prueba de recuperación es la actividad de probar qué tan bien una aplicación es capaz de recuperarse de fallas, fallas de hardware y otros problemas similares. A continuación se muestra la lista de verificación para las pruebas de recuperabilidad.

No Señor Descripción
1 Se conservan los datos de respaldo adecuados.
2 Los datos de respaldo se almacenan en una ubicación segura.
3 Los procedimientos de recuperación están documentados.
4 Todo el archivo multimedia se ha recuperado desde el punto de restauración
5 Se han recuperado todos los contactos
6 Todas las aplicaciones se han restaurado correctamente.

Prueba de simultaneidad

Por lo general, tomamos la ayuda de las pruebas simultáneas para asegurarnos de que varios usuarios puedan acceder simultáneamente a un programa al mismo tiempo. Al aplicar la prueba de simultaneidad para un dispositivo móvil, como tal, solo habrá un usuario. Por lo tanto, elimina la necesidad de realizar pruebas de simultaneidad para un dispositivo móvil.

Pruebas de usabilidad

Por lo general, obtiene una plataforma en la que el teléfono móvil y una cámara web se pueden ajustar para registrar la sesión de evaluación de usabilidad.

Hay herramientas disponibles como Aplausos . Proporcionan un grupo específico de participantes de la encuesta que se seleccionan cuidadosamente para probar su aplicación. Lo que distingue a Applause de otros servicios similares es que puede tener una consulta con un experto en Applause, quien luego elige a los participantes ideales basándose en la consulta.

A continuación se muestra la lista de verificación general para las pruebas de GUI.

No Señor. Descripción
1 ¿Se puede instalar la aplicación en el dispositivo?
2 ¿La aplicación se comporta según lo diseñado / deseado si hay una llamada entrante?
3 ¿La aplicación se comporta según lo diseñado / deseado si hay un SMS entrante?
4 ¿La aplicación se comporta según lo diseñado / deseado si el cargador está conectado?
5 ¿La aplicación se comporta según lo diseñado / deseado si el cargador está desconectado?
6 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo pasa al modo de suspensión?
7 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se reanuda desde el modo de suspensión?
8 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se reanuda desde la pantalla de bloqueo?
9 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo está inclinado?
10 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo se agita?
11 ¿Se comporta la aplicación según lo diseñado / deseado si un mensaje local proviene de otra aplicación (piense en: recordatorios de calendario, tareas pendientes, etc.)?
12 ¿Se comporta la aplicación según lo diseñado / deseado si un mensaje push proviene de otra aplicación (piense en: menciones de Twitter, mensaje de Whatsapp, etc.)?
13 ¿La aplicación interactúa correctamente con el sensor GPS (encender / apagar, recuperar datos GPS)?
14 ¿Está definida la funcionalidad de todos los botones o teclas del dispositivo para esta aplicación?
15 Verifique que los botones o teclas que no tienen una función definida no tengan un comportamiento inesperado en la aplicación al activarse.
dieciséis En caso de que haya un verdadero botón "atrás" disponible en el dispositivo, ¿el botón "atrás" lleva al usuario a la pantalla anterior?
17 En caso de que haya un verdadero botón de "menú" disponible en el dispositivo, ¿el botón de menú muestra el menú de la aplicación?
18 En caso de que haya un verdadero botón de "inicio" disponible en el dispositivo, ¿el botón de inicio lleva al usuario a la pantalla de inicio del dispositivo?
19 En caso de que haya un verdadero botón de "búsqueda" disponible en el dispositivo, ¿esto lleva al usuario a alguna forma de búsqueda dentro de la aplicación?
20 ¿Se comporta la aplicación según lo diseñado / deseado si se muestra el mensaje "Batería baja"?
21 ¿La aplicación se comporta como fue diseñada / deseada si el sonido en el dispositivo está apagado?
22 ¿La aplicación se comporta según lo diseñado / deseado si el dispositivo está en modo avión?
23 ¿Se puede desinstalar la aplicación del dispositivo?
24 ¿Funciona la aplicación como se esperaba después de la reinstalación?
25 ¿Se puede encontrar la aplicación en la tienda de aplicaciones? (Verificar después de la puesta en marcha)
26 ¿Puede la aplicación cambiar a diferentes aplicaciones en el dispositivo a través de la multitarea según lo diseñado / deseado?
27 ¿Funcionan todas las posiciones (botones) de la pantalla táctil cuando se utiliza un protector de pantalla?

UN testing framework o más específicamente un testing automatización framework es un entorno de ejecución para realizar automated tests. Es el sistema general en el que se automatizarán las pruebas. Se define como el conjunto de supuestos, conceptos y prácticas que constituyen una plataforma de trabajo o soporte para pruebas automatizadas.

Un marco de prueba es responsable de:

  • Definiendo el formato en el que expresar expectativas
  • Crear un mecanismo para conectar o impulsar la aplicación bajo prueba
  • Ejecutando las pruebas y reportando los resultados

Arquitectura del marco

La arquitectura general de un marco de prueba es la siguiente:

Para la automatización de pruebas móviles, necesitamos un buen marco de pruebas de automatización móvil. En la parte superior de ese marco, podemos construir nuestros casos de prueba. Los marcos de prueba de automatización móvil se pueden segregar por el sistema operativo del dispositivo móvil. En los siguientes capítulos, analizaremos dos tipos de marcos de prueba móviles: marcos de prueba de Android y marcos de prueba de iOS.

Hay muchos marcos de prueba de Android disponibles en el mercado. Echemos un vistazo a los 5 primeros en la pila.

  • Robotium- Robotium es un marco de prueba de código abierto para desarrollar escenarios de prueba funcionales, de sistema y de aceptación. Es muy similar al selenio.

  • UIAutomator- UIAutomator es un marco de prueba de Google que proporciona pruebas avanzadas de IU de aplicaciones y juegos nativos de Android. Tiene una biblioteca Java que contiene API para crear pruebas funcionales de IU y también un motor de ejecución para ejecutar las pruebas.

  • Appium- Appium es un marco de automatización de pruebas de código abierto para probar aplicaciones nativas e híbridas y aplicaciones web móviles. Las funciones de la biblioteca de Appium dentro del marco realizan llamadas al servidor de Appium que se ejecuta en segundo plano y que opera el dispositivo conectado.

  • Calabash- Calabash es un marco de prueba funcional que se puede utilizar para pruebas funcionales de iOS y Android. Sobre el papel, debe ser uno de los marcos más fáciles de usar e incluso los no desarrolladores deberían poder crear pruebas funcionales con él.

  • Selendroid- Selendroid es un niño relativamente nuevo en el bloque y se puede utilizar para probar funcionalmente sus aplicaciones de Android. Aparentemente, si está acostumbrado a Selenium, Selendroid debería ser una forma fácil de usar su conocimiento para crear sus pruebas funcionales para Android.

Al igual que los marcos de prueba de Android, hay muchos marcos de prueba de iOS disponibles en el mercado. Aquí hablaremos de algunos populares.

  • Appium- Appium es un marco de automatización de pruebas de código abierto para probar aplicaciones nativas e híbridas y aplicaciones web móviles. Las funciones de la biblioteca de Appium dentro del marco realizan llamadas al servidor de Appium que se ejecuta en segundo plano y que opera el dispositivo conectado.

  • Calabash- Calabash es un marco de prueba funcional que se puede utilizar para pruebas funcionales de iOS y Android. Sobre el papel, debe ser uno de los marcos más fáciles de usar e incluso los no desarrolladores deberían poder crear pruebas funcionales con él.

  • Zucchini - Zucchini es un marco de prueba funcional visual de código abierto para aplicaciones iOS basado en Apple UIAutomation.

  • UI Automation- Para sus pruebas funcionales más típicas (o pruebas de caja negra), en las que va a escribir código que simula la navegación de un usuario final por su aplicación, existe la Automatización de la interfaz de usuario. La automatización de la interfaz de usuario es proporcionada por Apple y es la forma aprobada por Apple de realizar pruebas funcionales de iOS.

  • FRANK – BDD for iOS - Si desea realizar pruebas de extremo a extremo en iOS y desea poder usar BDD y Cucumber, no se preocupe, hay una herramienta llamada Frank que le permitirá crear pruebas de aceptación y requisitos utilizando Cucumber.

Comparación entre diferentes marcos de prueba

Robotium es un marco de prueba de código abierto para escribir casos de prueba automáticos de caja gris para aplicaciones de Android. Con el soporte de Robotium, los desarrolladores de casos de prueba pueden escribir escenarios de prueba de función, sistema y aceptación, que abarcan múltiples actividades de Android.

Robotium se puede utilizar tanto para probar aplicaciones donde el código fuente está disponible como aplicaciones donde solo está disponible el archivo APK.

Beneficios de Robotium

  • Fácil de escribir, código más corto. Se necesita un tiempo mínimo para escribir casos de prueba sólidos.

  • Puede desarrollar casos de prueba poderosos, con un conocimiento mínimo de la aplicación bajo prueba.

  • El marco maneja múltiples actividades de Android automáticamente. La legibilidad de los casos de prueba ha mejorado enormemente en comparación con las pruebas de instrumentación estándar.

  • Temporización y retrasos automáticos.

  • Sigue automáticamente la actividad actual.

  • Encuentra vistas automáticamente.

  • Toma automáticamente sus propias decisiones (por ejemplo, cuándo desplazarse, etc.)

  • Sin modificaciones a la plataforma Android.

  • La ejecución de la prueba es rápida.

  • Los casos de prueba son más robustos debido al enlace en tiempo de ejecución a los componentes de la GUI.

  • Se integra sin problemas con Maven o Ant.

Inconvenientes de Robotium

  • Robotium no puede manejar componentes Flash o Web.

  • Maneja solo una aplicación a la vez.

  • No puede simular hacer clic en el teclado virtual usando Robotium (necesita usar 'enterText ()' para ingresar texto en un campo EditText)

  • Robotium no puede interactuar con las notificaciones de la barra de estado, es decir, despliegue el área de notificaciones y haga clic en una notificación específica.

  • Puede ser un poco lento, especialmente si se ejecuta en dispositivos más antiguos.

Cómo utilizar Robotium

Step 1- Los requisitos previos para utilizar Robotium es Java SDK (mínimo 1.6). Si no tiene Java instalado en su sistema, siga los pasos que se indican a continuación.

  • Descargue JDK y JRE de Oracle Technology Network

  • Acepta el contrato de licencia.

  • Instale JDK y JRE.

  • Configure la variable de entorno como se muestra en la captura de pantalla a continuación.

Step 2- Descarga Android Studio desde Android Studio

  • Haga doble clic en el exe y ejecute el instalador.
  • Continúe con todas las opciones predeterminadas.
  • Establezca ANDROID_HOME.

Step 3 - Instalar imágenes y herramientas de Android.

  • Haga clic en SDK Manager -
  • Seleccione el paquete necesario. Por ejemplo, si estamos creando una aplicación para Android 4.4.2, asegúrese de que los siguientes paquetes estén marcados en la sección Herramientas:

    • Herramientas del SDK de Android rev 22.6.3
    • Herramientas de plataforma Android rev 19.0.1
    • Herramientas de compilación del SDK de Android rev 19.1

Step 4 - Crea dispositivos virtuales Android.

  • Abra Android Studio y haga clic en AVD Manager en la barra de herramientas. Los AVD nos permiten probar y ejecutar nuestras aplicaciones de Android.
  • Utilice la siguiente configuración para un Nexus5 AVD:

    • Dispositivo: Nexus 5 (4,95, 1080 x 1920; xxhdpi)
    • Destino: API de Google x86 (Google Inc.): nivel de API 19
    • (Asegúrese de seleccionar el destino con las API de Google en el nombre).
    • CPU: Intel Atom (x86)
    • Marque la casilla para Usar GPU de host
    • Haga clic en Aceptar
  • ¡Ahora debería ver el AVD que creó en el Administrador de AVD, donde puede iniciarlo, eliminarlo o crear otro!

Step 5- Archivo Robotium Jar Descargue el archivo Robotium Jar de RobotiumTech

Pruebe una aplicación con Robotium

Para probar una aplicación con Robotium, siga los pasos que se indican a continuación:

Step 1 - Cree un proyecto de prueba en Android Studio denominado "RobotiumTest".

Elija todas las opciones predeterminadas hasta llegar a la página principal.

Step 2 - Copie el archivo jar de Robotium en la carpeta Lib del proyecto.

Step 3 - Agregue la dependencia en el archivo build.gradle en src carpeta.

androidTestCompile 'com.jayway.android.robotium: robotium-solo-5.5.3'

Step 4 - Sincroniza el Gradle.

Step 5 - Cree la clase de prueba de la siguiente manera -

package com.example;

import com.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.EditText;
import android.widget.TextView;

public class MyTestClass extends ActivityInstrumentationTestCase2<TestActivity>{

   private Solo solo;

   public MyTestClass() {
      super(TestActivity.class);
   }

   public void setUp() throws Exception {
      solo = new Solo(getInstrumentation(), getActivity());
   }

   public void testCase() throws Exception {
      String vResult="TestExample";
      EditText vEditText = (EditText) solo.getView(R.id.edit1);
      solo.clearEditText(vEditText);
      solo.enterText(vEditText,"TestExample");
      solo.clickOnButton("Submit");
      assertTrue(solo.searchText(vResult));
      TextView textField = (TextView) solo.getView(R.id.txt1);
      //Assert to verify result with visible value
      assertEquals(vResult, textField.getText().toString());
   }

   @Override
   public void tearDown() throws Exception {
      solo.finishOpenedActivities();
   }
}

Step 6- Guarde todos los cambios. Asegúrese de que no haya errores.

Step 7- Ahora, ejecute el caso de prueba. Si el caso de prueba tiene éxito, debería ver el siguiente resultado.

Selendroid es un marco de automatización de pruebas para probar aplicaciones nativas e híbridas de Android. Las pruebas de Selendroid se escriben utilizando la API del cliente Selenium Webdriver.

Beneficios de Selendroid

  • Totalmente compatible con JSON Wire Protocol / Selenium 3 Ready.

  • No se requiere modificación de la aplicación bajo prueba para automatizarla.

  • Prueba de la web móvil utilizando la aplicación webview del controlador de Android incorporada.

  • Mismo concepto para automatizar aplicaciones nativas o híbridas.

  • Los elementos de la interfaz de usuario se pueden encontrar mediante diferentes tipos de localizadores.

  • Los gestos son compatibles: API de interacciones de usuario avanzadas.

  • Los emuladores existentes se inician automáticamente.

  • Selendroid admite la conexión en caliente de dispositivos de hardware.

  • Integración completa como un nodo en Selenium Grid para escalado y pruebas paralelas.

  • Compatibilidad con varias API de destino de Android (10 a 19).

  • Inspector integrado para simplificar el desarrollo de casos de prueba.

  • Selendroid se puede extender en tiempo de ejecución con sus propias extensiones.

  • Selendroid puede interactuar con múltiples dispositivos Android (emuladores o dispositivos de hardware) al mismo tiempo.

Inconvenientes de Selendroid

El inconveniente de esta herramienta es que es bastante lenta y, en algunas máquinas con menos de 4 GB de RAM, no se puede utilizar.

Cómo usar Selendroid

Step 1- Los requisitos previos para utilizar Robotium es Java SDK (mínimo 1.6). Si no tiene Java instalado en su sistema, siga los pasos que se indican a continuación.

  • Descargue JDK y JRE desde Oracle JavaSE

  • Acepta el contrato de licencia.

  • Instale JDK y JRE.

  • Configure la variable de entorno como se muestra en la captura de pantalla a continuación.

Step 2- Descargue Android Studio desde el SDK de Android (llevará tiempo debido al tamaño del archivo).

  • Haga doble clic en el exe y ejecute el instalador.
  • Continúe con todas las opciones predeterminadas.
  • Establezca ANDROID_HOME.

Step 3- Descargue los archivos jar de Selenium y la aplicación de prueba de Selendroid

  • Descargue el archivo jar de selenio y la aplicación de prueba.
  • Colóquelo en cualquier carpeta, es decir, D: \ SelendroidJars.

Step 4 - Dispositivo físico con cable USB.

  • Asegúrese de que el dispositivo esté conectado a la estación de trabajo con un cable USB.

  • Asegúrese de que el modo de depuración USB (en configuración → Opciones de desarrollador) esté habilitado.

Probar una aplicación con Selendroid

Para probar una aplicación con Selendroid, siga los pasos que se indican a continuación:

Step 1 - Instala Eclipse.

Step 2 - Crea un proyecto Java.

Step 3 - Agregue el archivo jar de Selendroid descargado al proyecto recién creado.

Step 4 - Agregue los archivos jar de Selenium descargados al proyecto recién creado.

Step 5 - Configurar testNG en el Eclipse.

Step 6- Conecte los dispositivos móviles con el sistema mediante un cable USB. Configure el modo de depuración USB desde las opciones del desarrollador en la configuración.

Step 7- Ejecute el servidor Selendroid. Abra el símbolo del sistema y escriba el siguiente código y presione Enter -

java -jar selendroid-standalone-0.17.0-with-dependencies.jar -app selendroid-test-app-0.17.0.apk

Selendroid-standalone iniciará un servidor http en el puerto 4444 y escaneará todos los dispositivos virtuales Android (avd) que el usuario haya creado (~ / .android / avd /).

Abra el navegador web y navegue hasta: http://localhost:4444/wd/hub/status.

Step 8- Crear un proyecto Java; agregue las bibliotecas Selendroid Standalone, los frascos de Selenium y las bibliotecas JUnit en la ruta de compilación.

Step 9 - Crear paquete bajo el proyecto Java.

Step 10 - Cree una clase debajo del paquete y escriba el siguiente código.

package selTest;

import io.selendroid.SelendroidDriver; 
import io.selendroid.common.SelendroidCapabilities;
import io.selendroid.standalone.SelendroidConfiguration;
import io.selendroid.standalone.SelendroidLauncher;

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 

import org.testng.Assert; 
import org.testng.annotations.AfterSuite; 
import org.testng.annotations.BeforeSuite; 
import org.testng.annotations.Test;

public class SelendroidTest {

   private WebDriver driver ;

   @BeforeSuite 
   public void setUp() throws Exception {
      SelendroidConfiguration config = new SelendroidConfiguration();
      config.addSupportedApp("selendroid-test-app-0.9.0.apk");
      SelendroidLauncher selendroidServer = new SelendroidLauncher(config);
      selendroidServer.launchSelendroid();
	  
      SelendroidCapabilities caps = new
         SelendroidCapabilities("io.selendroid.testapp:0.9.0"); 
      driver = new SelendroidDriver(caps);
   }
   
   @Test 
   public void selendroidTest() throws Exception {
      WebElement inputField = driver.findElement(By.id("my_text_field"));
      Assert.assertEquals("true", inputField.getAttribute("enabled"));
      inputField.sendKeys("Selendroid");
      
      Assert.assertEquals("Selendroid", inputField.getText());
	  
      WebElement button = driver.findElement(By.id("buttonTest"));
      button.click();
	  
      button = driver.findElement(By.id("button2"));
      button.click();
      
      Thread.sleep(5000);
	  
      button = driver.findElement(By.id("startUserRegistration"));
      button.click();
      
      Thread.sleep(10000);
	  
      WebElement element = driver.findElement(By.id("label_username")); 
      
      String text = element.getText();
      System.out.println(text);
      element = driver.findElement(By.id("inputUsername"));
      element.sendKeys("bob");
      
      element = driver.findElement(By.id("inputEmail"));
      element.sendKeys("test[email protected]"); 
      
      element = driver.findElement(By.id("inputPassword"));
      element.clear();
      element.sendKeys("test1233");
      
      element = driver.findElement(By.id("inputName"));
      element.clear(); 
      element.sendKeys("My Name ");
	  
      element = driver.findElement(By.id("input_preferedProgrammingLanguage")); 
      element.click();
      
      element = driver.findElement(By.id("text1"));
      element.click();
	  
      element = driver.findElement(By.id("input_adds"));
      element.click();
	  
      element = driver.findElement(By.id("btnRegisterUser"));
      element.click();
      
      element = driver.findElement(By.id("buttonRegisterUser"));
      element.click(); 
   }
   
   @AfterSuite 
   public void tearDown(){ 
      driver.quit(); 
   } 
}

Step 11 - Ejecutar la clase con la configuración de ejecución testNG.

Appium es un marco de automatización de pruebas de código abierto para probar aplicaciones nativas e híbridas y aplicaciones web móviles. Maneja aplicaciones iOS y Android usando el protocolo WebDriver.

Ventajas de Appium

  • Es gratis y (en su mayoría) de código abierto.

  • Tiene un grupo de Google muy bien apoyado y activo.

  • Está en la especificación Selenium 3, por lo que debería estar preparado para el futuro.

  • Es compatible con Android e iOS.

  • No requiere que se instale nada en el dispositivo, no se requieren cambios de servidor o código.

Inconvenientes de Appium

  • No hay soporte para esperas inteligentes.
  • En iOS, solo puede ejecutar una prueba a la vez por Mac.
  • Soporte limitado para gestos.
  • Soporte limitado para Android <4.1

Cómo usar Appium

Step 1- Los requisitos previos para utilizar Appium es Java SDK (mínimo 1.6). Si no tiene Java instalado en su sistema, siga los pasos que se indican a continuación.

  • Descargue JDK y JRE desde Oracle JavaSE

  • Acepta el contrato de licencia.

  • Instale JDK y JRE.

  • Configure la variable de entorno como se muestra en la captura de pantalla a continuación.

Step 2- Descargue Android Studio desde el SDK (tomará tiempo debido al tamaño del archivo).

  • Haga doble clic en el exe y ejecute el instalador.
  • Continúe con todas las opciones predeterminadas.
  • Establezca ANDROID_HOME.

Step 3 - Instalar imágenes y herramientas de Android.

  • Haga clic en SDK Manager -
  • Seleccione el paquete necesario. Por ejemplo, si estamos creando una aplicación para Android 4.4.2, asegúrese de que los siguientes paquetes estén marcados en la sección Herramientas:

    • Herramientas del SDK de Android rev 22.6.3
    • Herramientas de plataforma Android rev 19.0.1
    • Herramientas de compilación del SDK de Android rev 19.1

Step 4 - Crear dispositivos virtuales Android -

  • Abra Android Studio y haga clic en AVD Manager en la barra de herramientas. Los AVD nos permiten probar y ejecutar nuestras aplicaciones de Android.

  • Utilice la siguiente configuración para un Nexus5 AVD:

    • Dispositivo: Nexus 5 (4,95, 1080 x 1920; xxhdpi)

    • Destino: API de Google x86 (Google Inc.) - Nivel de API 19

    • Asegúrese de seleccionar el destino con las API de Google en el nombre.

    • CPU: Intel Atom (x86)

    • Marque la casilla para Usar GPU de host

    • Haga clic en Aceptar.

  • ¡Ahora debería ver el AVD que creó en el Administrador de AVD, donde puede iniciarlo, eliminarlo o crear otro!

Step 5- Descargar archivos jar de Appium desde Appium

Pruebe una aplicación con Appium

Para probar una aplicación con Appium, siga los pasos que se indican a continuación:

Step 1 - Cree un proyecto de prueba en Android Studio denominado "RobotiumTest".

Elija todas las opciones predeterminadas hasta llegar a la página principal.

Step 2- Agregue los frascos de Appium a su proyecto. Haga clic en Proyecto → Aplicación → copie todos los frascos en lib. Seleccione los frascos copiados excepto Selenium, el cliente Java y Junit Jar, luego haga clic derecho sobre ellos y haga clic en "Agregar como biblioteca".

Step 3- Haga clic en build.gradle en la aplicación. Verá todas las bibliotecas agregadas, como se muestra en la siguiente captura de pantalla.

Step 4 - Ahora cree una clase Java como se muestra a continuación -

AppiumDriver driver;
@Before
public void testCaseSetup()throws Exception {
   //service.start();
   //reader.readFile();

   DesiredCapabilities cap = new DesiredCapabilities();
	
   cap.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
   cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
   cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
   cap.setCapability(MobileCapabilityType.APP, "c://apk//sample.apk");
	
   driver = new AndroidDriver<MobileElement>("http://127.0.0.1:4444/wd/hub",cap);
}

@Test
public void testcase1()throws Exception {
   driver.findElementByID("Example").click();
   Asser.assertTrue(driver.findElementByID("Example").isDisplayed));
}

@After
public void testCaseTearDown() {
   driver.quit();
}

Step 5 - Ejecución del caso de prueba.

  • Haga clic en la variante de compilación y seleccione Prueba unitaria.
  • Inicie el servidor de Appium con el puerto específico "4444".
    • Descargue Appium para Windows desde aquí.
    • Haga doble clic en .exe e instale Appium.
    • Haga clic en el icono para subir la interfaz de usuario.
    • Cambie el puerto si es necesario, como se muestra a continuación.
    • Haga clic en el botón Reproducir para iniciar el servidor.
  • Conecte el dispositivo con la depuración USB activada o inicie un emulador.
  • Haga clic derecho en la clase de prueba y haga clic en "Ejecutar".

Zucchini es un nuevo marco de prueba que utiliza un lenguaje específico de dominio (DSL) estilo BDD. Una de sus áreas de enfoque es simplificar las pruebas de aceptación escritas con Selenium.

No es un reemplazo para JBehave o Robot Framework, como verá más adelante. Aquí, le daremos una idea de los conceptos de Zucchini describiendo un ejemplo paso a paso.

Cómo instalar Zucchini

Los requisitos previos para instalar Zucchini es XCode 4.2. Además, se requieren algunas herramientas de línea de comando como brew update && brew install imagemagick && brew install coffee-script.

Cómo usar calabacín

  • gem install zucchini-ios

  • Zucchini no implica realizar modificaciones en el código de su aplicación. También podría mantener sus pruebas de calabacín en un proyecto separado.

  • Comience creando un andamio de proyecto

  • zucchini generate --project /path/to/my_project

  • Cree un andamio de características para su primera característica

  • zucchini generate --feature /path/to/my_project/features/my_feature

  • Empiece a piratear modificando features/my_feature/feature.zucchini y features/support/screens/welcome.coffee.

  • Alternativamente, consulte el proyecto de demostración de calabacín que presenta una configuración de Zucchini fácil de explorar en torno a la muestra de CoreDataBooks de Apple.

Ejecutando en el dispositivo

  • Agrega tu dispositivo a features/support/config.yml.

  • los udidetect La utilidad es útil si planea agregar dispositivos de vez en cuando: udidetect -z.

    ZUCCHINI_DEVICE="My Device" zucchini run /path/to/my_feature

  • Ejecutando en el simulador de iOS. Le recomendamos encarecidamente que ejecute las funciones de Zucchini en hardware real. Sin embargo, puede ejecutarlos en el simulador de iOS, si es necesario.

    • En primer lugar, modifique su features/support/config.ymlpara incluir una ruta completa a su aplicación compilada. Por ejemplo,

      aplicación: /Users/vaskas/Library/Developer/Xcode/DerivedData/CoreDataBooks-ebeqiuqksrwwoscupvxuzjzrdfjz/Build/Products/Debug-iphonesimulator/CoreDataBooks.app

    • En segundo lugar, agregue una entrada 'Simulador de iOS' a la sección de dispositivos (no se necesita UDID) y asegúrese de proporcionar el valor real para 'pantalla' según la configuración de su Simulador de iOS:

  • Ejecutarlo como ...

    ZUCCHINI_DEVICE="iOS Simulator" zucchini run /path/to/my_feature

Pantalla de resultados