Resultado Estrategia Iteracion2 - gorozcoua/team18 GitHub Wiki

📋 Informe de Resultados de Estrategia de Pruebas

Aplicación Bajo Pruebas (ABP): Vinilos
Versión evaluada: Release V1.0.3
Fecha del informe: 06/06/2025
Ambiente de pruebas:

  • Sistema Operativo: Android Lollipop 5.0
  • Dispositivo: Emulador Pixel 5
  • API: 34

🔍 1. Introducción

Este documento presenta los resultados del proceso de pruebas funcionales ejecutado sobre la aplicación Vinilos, versión V1.0.1, desarrollada para dispositivos Android. Esta app permite consultar información sobre álbumes musicales y artistas.


📌 2. Alcance del informe

Este informe cubre pruebas funcionales enfocadas en:

  • Consulta del catálogo de álbumes
  • Consulta del listado de artistas
  • Consulta del detalle de álbum

Las pruebas se realizaron en un entorno emulado. No se incluyen pruebas de rendimiento, seguridad ni usabilidad en esta etapa.


🎯 3. Objetivos de las pruebas

  • Verificar que las funcionalidades cumplan con los requerimientos definidos.
  • Validar el comportamiento esperado ante entradas válidas e inválidas.
  • Detectar posibles errores o desviaciones.
  • Proveer evidencia para la toma de decisiones respecto a la liberación de la versión.

🧪 4. Metodología de pruebas

Se emplearon pruebas funcionales de caja negra, clasificadas en:

  • Escenarios Positivos: Entrada válida y comportamiento esperado.
  • Escenarios Negativos: Entrada inválida y manejo adecuado de errores.

Las pruebas fueron ejecutadas manualmente y documentadas con sus respectivos resultados.


✅ 5. Resultados de pruebas

📊 Resumen general:

Total de pruebas ejecutadas Pruebas con incidencias Incidencias resueltas Pruebas exitosas
5 2 2 5 (100%)

🗂️ Detalle por prueba:

ID Prueba Fecha Tester Funcionalidad Requerimiento Tipo Escenario Escenario Resultado Artefacto Observaciones
P00101 22/04/2025 Gerardo Orozco Consultar catálogo de álbumes Funcional Positivo E00101 Sin incidencias VerAlbumesTest.kt Ejecutar con red
P00102 22/04/2025 Gerardo Orozco Consultar catálogo de álbumes Funcional Negativo E00102 27 VerAlbumesSinRedTest.kt Ejecutar sin red
P00301 22/04/2025 Gerardo Orozco Consultar listado de artistas Funcional Positivo E00301 Sin incidencias VerMusicosTest.kt Ejecutar con red
P00302 22/04/2025 Gerardo Orozco Consultar listado de artistas Funcional Negativo E00302 27 VerMusicosSinRedTest.kt Ejecutar sin red
P00201 06/06/2025 Gerardo Orozco Consultar detalle de álbum Funcional Positivo E00201 Sin incidencias VerDetalleAlbumTest.kt Ejecutar con red

🔎 6. Análisis por funcionalidad

🎵 6.1 Catálogo de álbumes

  • Se validó la correcta carga y presentación del catálogo.
  • Se probaron respuestas vacías y errores de servidor sin incidencias.

Resultado: ✅ Estable y funcional.

🎤 6.2 Listado de artistas

  • Correcta carga de artistas desde el servidor.
  • Comportamiento adecuado ante ausencia de datos.

Resultado: ✅ Cumple requisitos.

💿 6.3 Detalle de álbum

  • Visualización completa y correcta del detalle de un álbum.
  • Sin fallos al navegar entre pantallas.

Resultado: ✅ Funcionalidad sólida.


📝 7. Observaciones

  • No se identificaron fallos ni cierres inesperados.
  • La experiencia fue estable en el entorno emulado.
  • Se recomienda realizar pruebas en dispositivos reales.

💡 8. Recomendaciones

  1. Ejecutar pruebas en dispositivos físicos:
    Validar el rendimiento y la compatibilidad en dispositivos reales con distintas versiones de Android, especialmente versiones más recientes (Android 12+).

  2. Cobertura de pruebas no funcionales:
    Implementar pruebas de rendimiento (ejemplo, tiempo de respuesta en conexión 3G/4G), pruebas de seguridad (almacenamiento seguro de datos) y accesibilidad (tamaño de texto, navegación con lector de pantalla).

  3. Preparación para pruebas de regresión:
    Diseñar una suite base que pueda reutilizarse en futuras versiones, permitiendo verificar que nuevas funcionalidades no rompan las ya existentes.


📘 9. Conclusión de los escenarios de prueba funcional

Tras ejecutar cinco escenarios de prueba funcional sobre la versión V1.0.3 de la aplicación Vinilos, se concluye que el comportamiento general del sistema es estable, coherente y cumple con los requerimientos establecidos.

Todas las funcionalidades probadas —catálogo de álbumes, listado de artistas y detalle de álbum— respondieron correctamente tanto a entradas válidas como a escenarios negativos, demostrando un manejo apropiado de errores y una buena experiencia en el flujo de navegación.

El sistema no presentó incidencias durante la evaluación, lo que sugiere un nivel alto de madurez en esta etapa.

🔬 10. Resultados de Perfilamiento de la Aplicación

Como complemento a la estrategia de pruebas funcionales, se realizó un perfilamiento técnico sobre la versión V1.0.3 de la aplicación Vinilos, usando un dispositivo físico (Pixel 7 con Android API 36) y herramientas del Android Studio Profiler (CPU, Heap Dump y Native Memory). Este análisis permitió detectar oportunidades de mejora en aspectos clave de rendimiento.

📈 Resumen de hallazgos

🔧 CPU

  • Se identificó una carga elevada en el hilo principal, especialmente en el método loopOnce() del Looper, con más del 50% del tiempo consumido por dispatchMessage().
  • Esto sugiere la presencia de operaciones pesadas en callbacks de UI que deberían externalizarse a hilos secundarios.

🧠 Memoria Nativa

  • El hilo RenderThread mostró un uso intensivo de recursos gráficos, con actividad frecuente en CanvasContext::draw() y funciones de OpenGL.
  • Esto evidencia dibujado excesivo o poco optimizado, lo que puede afectar la fluidez de la interfaz.

🗃️ Heap Dump

  • El análisis reveló uso significativo de memoria retenida por una sola instancia de EmojiCompat y múltiples vistas (como MaterialButton, TextView, RecyclerView, entre otros).
  • También se detectaron layouts anidados innecesarios, lo cual incrementa el consumo de recursos.

✅ Recomendaciones Técnicas

  • Desacoplar tareas pesadas del hilo de la UI mediante corutinas o servicios en segundo plano.
  • Evitar redibujos innecesarios y optimizar la jerarquía de vistas.
  • Evaluar la necesidad del uso de EmojiCompat y simplificar el layout utilizando ConstraintLayout o ViewStub.