Tutorial de prueba de aplicaciones iOS: manual y automatización
¿Qué son las pruebas de aplicaciones iOS?
Pruebas de aplicaciones iOS es un proceso de prueba en el que una aplicación iOS se prueba en dispositivos Apple reales para comprobar si funciona como se espera o no para acciones específicas del usuario como tiempo de instalación, interfaz de usuario, experiencia de usuario, apariencia, comportamiento, funcionalidad, tiempo de carga, rendimiento, aplicación. Listado de tiendas, compatibilidad con versiones del sistema operativo, etc.
¿Por qué probar aplicaciones iOS?
Pruebas de aplicaciones iOS es necesario porque iOS es la plataforma de Apple para aplicaciones móviles que se lanzó el 29 de junio de 2007. A diferencia Android, Apple no otorga licencia de iOS para su instalación en hardware que no sea de Apple. iOS y las aplicaciones iOS sólo se pueden instalar en dispositivos Apple, por lo tanto, su aplicación iOS debe ser compatible con las versiones iOS y los dispositivos iOS.
Esta es la pregunta común cuando un desarrollador crea una aplicación para iOS.
No importa cuánto tiempo invierta en el diseño y la implementación, los errores son inevitables y aparecerán errores. Hay algunos errores comunes en la aplicación de iOS. Como se muestra en la siguiente figura.
Bloqueo de la aplicación
Uno de los problemas más frustrantes al utilizar dispositivos Apple es que una aplicación puede fallar con frecuencia durante la ejecución. Muchas veces la aplicación falla porque hay algunos errores o pérdida de memoria en las aplicaciones.
Incompatibilidades de aplicaciones
Es posible que su aplicación iOS funcione perfectamente en la versión actual de iOS, pero si se actualiza iOS, es posible que no funcione debido a problemas de incompatibilidad.
Vulnerabilidad de seguridad
Una vulnerabilidad de seguridad en iOS permite al hacker atacar sus dispositivos iOS y robar su información privada. Hasta ahora, se descubren graves vulnerabilidades de seguridad del iPhone en diferentes versiones de iOS.
Pérdidas de memoria
Las pérdidas de memoria son bloques de memoria asignada que el programa ya no utiliza. Las pérdidas de memoria hacen que su aplicación iOS falle.
Son errores y siempre deben corregirse.
iOS probando MindMap
Como se muestra en la figura anterior, iOS Pruebas MindMap muestra todos los elementos que el evaluador debe considerar al realizar pruebas en iOS.
Lista de verificación de pruebas de aplicaciones iOS
Esta lista de verificación está diseñada específicamente para probar las características de las aplicaciones móviles iOS. Obviamente, prueba sólo las características genéricas de la aplicación y no la funcionalidad de la misma.
- Verifique el tiempo de instalación que tarda la aplicación en el dispositivo. Asegúrese de que la aplicación se instale dentro de un tiempo aceptable.
- Una vez instalada la aplicación, verifique si tiene el ícono y el nombre de la aplicación. Además, asegúrese de que tanto el icono como el nombre se expliquen por sí mismos y reflejen la intención principal de la aplicación.
- Inicie la aplicación y verifique si se muestra la pantalla de inicio.
- Verifique el tiempo de espera de la pantalla de inicio y el tiempo necesario para cargar la pantalla de inicio. La pantalla de inicio de la aplicación debería cargarse en un tiempo aceptable. Si la pantalla de inicio solo tarda más en cargarse, entonces hay más posibilidades de que el usuario cierre o incluso desinstale la aplicación. Además, compruebe cómo se cargan los contenidos en la pantalla de inicio.
- La función principal de la aplicación debería ser evidente de inmediato. Debería hablar por sí solo.
- Compruebe si la aplicación admite orientaciones horizontal y vertical. Si es así, revisa la aplicación en ambas orientaciones. La interfaz de usuario de la aplicación debe configurarse en consecuencia.
- Sin conexión a Internet, inicie la aplicación. Asegúrese de que la aplicación se comporte según lo diseñado/deseado. Existe la posibilidad de que la aplicación se bloquee al iniciarla o simplemente muestre una pantalla en blanco.
- Si la aplicación utiliza servicios de ubicación, verifique si se muestra o no la alerta de permiso de ubicación. Esta alerta debe aparecerle al usuario solo una vez.
- Si la aplicación envía notificaciones push, verifique si se muestra o no la alerta de permiso para notificaciones push. Esta alerta también debe aparecerle al usuario solo una vez.
- Inicie la aplicación, ciérrela y reiníciela. Compruebe si la aplicación se comporta según lo diseñado/deseado
- Cierre la aplicación tocando el botón Inicio del dispositivo y abra la aplicación nuevamente. Compruebe si la aplicación funciona según lo diseñado/deseado.
- Una vez instalada, verifique si la aplicación aparece en la aplicación de configuración del iPhone.
- Una vez que la aplicación esté activa, verifique si se puede encontrar en la "App Store". Habrá una versión del sistema operativo compatible con la aplicación. Por lo tanto, asegúrese de que la aplicación se pueda encontrar en la “App Store” del dispositivo con la versión del sistema operativo compatible. Además, la aplicación no debe aparecer en la “App Store” del dispositivo con versión de sistema operativo no compatible.
- Compruebe si la aplicación entra en modo de suspensión cuando se ejecuta en segundo plano para evitar que se agote la batería.
- Si el rendimiento de la aplicación es lento o cada vez que se cargan contenidos, verifique si hay un ícono de estado de progreso (“Cargando…”), preferiblemente con un mensaje específico.
- Busque la aplicación con su nombre en la barra de búsqueda del dispositivo. Compruebe si la aplicación aparece en la lista
- Compruebe si la apariencia de los botones que realizan acciones estándar no se modifica en la aplicación (por ejemplo: actualizar, organizar, papelera, Responder, regresar, etc.)
- Compruebe si los botones estándar no se utilizan para otras funciones que normalmente se utilizan para
Estrategia de prueba de iOS
La siguiente figura presenta algunos tipos comunes de estrategias de prueba de iOS.
Pruebas automatizadas
Las pruebas automatizadas son las mayores ventajas de las pruebas de iOS. Le permite detectar errores y problemas de rendimiento rápidamente. Los beneficios de las pruebas automatizadas se muestran a continuación:
- Las pruebas automatizadas se pueden ejecutar en varios dispositivos, lo que le permitirá ahorrar tiempo
- Las pruebas automatizadas pueden apuntar a SDK. Puede ejecutar pruebas en diferentes versiones de SDK
- Las pruebas automatizadas aumentan la productividad de las pruebas y ahorran costos de desarrollo de software.
- Hay muchos marcos de pruebas de código abierto que admiten pruebas automatizadas en iOS.
Pruebas unitarias con OCUnit
Cuando se lanzó el SDK de iOS original, carecía Examen de la unidad capacidades. Entonces Apple ha recuperado el unidadOC Solución de prueba unitaria en iOS SDK versión 2.2.
OCUnit es un marco de prueba para C-Objetive en Mac OS. Las mayores ventajas de un marco OCUnit son la estrecha integración en Xcode entorno de desarrollo como se muestra a continuación.
Algunos de los beneficios de OCUnit se muestran en la siguiente figura.
Pruebas de interfaz de usuario con UIAutomation
Automatización de UI es un JavaGuión Biblioteca proporcionada por Apple Inc, que se puede utilizar para realizar una prueba automatizada en dispositivos reales y en iOS Simulator. Este marco se agrega a iOS SDK4.0. Con UI Automation, puede automatizar las pruebas de la aplicación no solo en el simulador sino también en el dispositivo real.
UIAutomation le ofrece estos beneficios:
- Reducir el esfuerzo en Prueba Manualmente
- Usa menos tu memoria para ejecutar todas tus pruebas
- Simplifique su procedimiento de prueba de UI (simplemente presione uno o tres botones y ejecute todos sus conjuntos de pruebas)
El instrumento UIAutomation funciona a partir de scripts, que están escritos en JavaScript. Simula eventos de usuario en la aplicación iOS de destino.
Desventajas y ventajas de UIAutomation
Ventajas | Contras | |
---|---|---|
1. | Buen soporte para gestos y rotación. | No es código abierto, menos soporte del desarrollador. |
2. | Puede ejecutar pruebas de UIAutomation en el dispositivo, no en el único simulador. | No se puede integrar muy bien con otras herramientas |
3. | Desarrollado por JavaScript, es un lenguaje de programación popular. |
La figura anterior representa algunas clases comunes en el marco UIAutomation.
- La Elemento UIA La clase es la superclase para todos los elementos de la interfaz de usuario en el contexto de la automatización.
- La UIATarget La clase representa los elementos de la interfaz de usuario de alto nivel del sistema bajo prueba.
- La UIALogger La clase proporciona información de prueba y error sobre la funcionalidad de recuperación.
- La Vista de actividad UIALa clase permite el acceso y el control de las vistas de actividad dentro de su aplicación.
- La Hoja de acción de la UIAA La clase permite el acceso y el control de las hojas de acción dentro de su aplicación.
- User Acción del evento
- Clase UISlider
- Clase de botón UIA
- Clase UIAKey
- Clase de teclado UIA
Otros marcos de pruebas automatizados
- Frank: Automatizado Prueba de aceptación marco para iPhone y iPad
- KIF : es un iOS examen de integración estructura. Permite una fácil automatización de las aplicaciones de iOS aprovechando los atributos de accesibilidad que el sistema operativo pone a disposición de las personas con discapacidad visual.
Prueba manual
Prueba exploratoria
Es una prueba sin un plan de prueba formal. Las pruebas exploratorias son un método de prueba de bajo costo, pero pueden pasar por alto errores potenciales en su aplicación iOS.
Contras y ventajas de las pruebas exploratorias
Ventajas | Contras | |
---|---|---|
1. | Less Se necesita preparación, detectar a tiempo errores graves. | Requiere una gran habilidad del probador. |
2. | No necesito Plan de prueba acelerar la detección de errores. | La cobertura de las pruebas es baja. No garantiza que se prueben todos sus requisitos. |
3. | La mayoría de los errores se descubren temprano mediante algún tipo de prueba exploratoria. | Falta de documentación de prueba. |
User Testing
Las pruebas de usuario son un tipo de prueba manual en iOS. El propósito de esta prueba es crear mejores aplicaciones, no solo Libre de errores aplicaciones. La siguiente figura muestra cuatro tipos de pruebas de usuario.
Prueba de concepto
Evalúe la respuesta del usuario a una idea de aplicación antes de lanzarla al mercado. Los procedimientos de prueba de conceptos en iOS se describen a continuación.
Las pruebas de usabilidad
Las pruebas de usabilidad es una prueba de lo fácil que es usar tu aplicación iOS. En las pruebas de iOS, la prueba de usabilidad podría ser grabado para recordar o compartir con otros.
Hay algunas herramientas que admiten pruebas de usabilidad en iOS.
TryMyUI aplicaciones de prueba de usuarios móviles para Android y iOS.
Delicia.io, esta herramienta puede capturar la interacción real del usuario en sus aplicaciones de iOS.
Prueba beta
La prueba Beta es la pruebas de integración con datos reales para obtener feedback final de los usuarios. Para distribuir sus aplicaciones para pruebas beta, debe seguir los pasos a continuación.
–Condición previa: Si está realizando una prueba beta de un candidato final para una versión, asegúrese de validar la aplicación antes de distribuirla a los evaluadores.
–Encuentre el probador a través del servicio: recopila ID de dispositivos de los evaluadores y los agrega a Centro de miembros
–Crear distribución ad hoc: La distribución ad hoc permite al evaluador ejecutar su aplicación en su dispositivo sin necesidad Xcode. Este paso incluye 2 subpasos.
- Crear certificados de distribución
- Crear perfiles de aprovisionamiento ad-hoc
–Solicite comentarios del evaluador: El probador realiza pruebas y le envía informes de errores. Después de que se lance su aplicación, podrá obtener los informes de iTunes conectar.
A/B testing
A/B testing es una de las formas más poderosas de evaluar la efectividad de su aplicación iOS. Usa experimentos aleatorios con dos dispositivos, A y B.
Las pruebas A/B incluyen tres pasos principales
- Configurar una prueba: Preparé 2 versiones de su aplicación iOS (A y B) y métrica de prueba
- Prueba:Pruebe 2 versiones de las aplicaciones iOS anteriores en varios dispositivos simultáneamente.
- Analizar: Mida y seleccione una mejor versión para lanzar
Las siguientes herramientas admiten pruebas A/B en iOS.
- Arise: Pruebas A/B para iOS y Android. Puede integrarse en su aplicación iOS y acelerar el proceso de prueba.
Mejores prácticas para pruebas A/B
- Definir el dirigidos de tu prueba. Cualquier prueba es inútil sin un objetivo.
- Ver Los usuarios finales usan su aplicación la primera vez.
- Ejecutar uno prueba solo por actualización. Le ahorra tiempo al realizar pruebas.
- Monitorear su prueba con cuidado. Puede aprender experiencias de su prueba monitoreándola.
Pruebas de iOS Mejores prácticas
A continuación se ofrecen algunos consejos que debe conocer a la hora de organizar las pruebas de su aplicación iOS.
- Pruebe la aplicación en un dispositivo real ser realista sobre el rendimiento
- Mejorar sus métodos de prueba, porque los métodos de prueba tradicionales ya no son suficientes para cubrir todas las pruebas en iOS
- Usando registro de la consola para probar la aplicación iOS. Esta es una característica de iOS que incluye información de cada aplicación del dispositivo.
- Comparación de errores de aplicación usando pantalla corta incorporada dominio. Ayuda al desarrollador a comprender cómo ocurren los errores.
- Informe de bloqueo Son herramientas útiles a la hora de probar su aplicación. Pueden detectar fallos y registrar detalles para que puedas investigar los errores fácilmente.
MITOS sobre las pruebas de iOS
Esta sección examina algunos mitos y realidades populares sobre las pruebas de iOS.
Aplicación de prueba en iOS y Android son lo mismo
iOS y Android Son dos plataformas desarrolladas por Apple Inc y Google. Son totalmente diferentes. Etc entornos de prueba, frameworks de prueba, lenguajes de programación.
La aplicación de prueba en iOS Simulator es suficiente.
El Simulador de iOS no es lo suficientemente potente para probar una aplicación, ya que tiene algunas limitaciones:
- Limitaciones de hardware (cámara, entrada de micrófono, sensor)
- Puede parecer que la interfaz de usuario de su aplicación se ejecuta más rápido y sin problemas que en un dispositivo
- Limitaciones de la API
- Algunos marcos no son compatibles (Media Player, Store Kit, Message UI...)
Todos descargarán mis aplicaciones en la tienda de aplicaciones porque tiene muchas funciones.
Cuantas más funciones tenga su aplicación, más errores podrá tener. Ningún usuario descargará tu aplicación si todavía tiene muchos defectos.