Mejores prácticas para testing en aplicaciones Android

Clase 16 de 16Curso de Android Testing

Resumen

Aprender a testear aplicaciones en Android implica ir más allá de escribir código; se trata de mejorar la calidad, seguridad y mantenimiento del software. Durante estas sesiones, profundizaste en el proceso de testing por capas en Android, desde pruebas unitarias utilizando fakes y coroutines, hasta validaciones visuales en UI con Jetpack Compose y pruebas integradas de navegación. También exploraste pruebas integrales (end to end) realistas, simulando flujos completos con bases de datos en memoria.

¿Qué testear y qué omitir?

Es fundamental reconocer que no todo requiere un test. Debes centrar tus esfuerzos en las funcionalidades críticas de la aplicación, como un sistema de autenticación, dado que estos flujos son esenciales para su uso correcto.

  • Prioriza los flujos que garantizan la funcionalidad básica.
  • Aplica esfuerzos estratégicamente, enfocándote en áreas de mayor riesgo y valor.

¿Cómo escribir mejores tests?

Escribir tests va más allá de sumar líneas de código; es una práctica que impulsa calidad y claridad en tu código productivo. Para lograrlo, sigue estas recomendaciones:

  • No memorices herramientas, enfócate en el razonamiento lógico.
  • Clasifica y nombra adecuadamente los tests para facilitar su mantenimiento.
  • Considéralos como código esencial: mantener limpio y claro también aplica a tests.
  • Realiza refactorizaciones periódicas para mantener la calidad.

¿Cómo integrar los tests en proyectos existentes?

Al enfrentarte con proyectos sin estrategia previa de testing o con deficiencias estructurales, sigue estos pasos:

  • Define claramente una estrategia inicial.
  • Enfoca la primera etapa en validar flujos críticos indispensables.
  • Usa inicialmente mocks antes que fakes si las dependencias son muchas o complejas.

Recuerda que el tiempo ideal para empezar con tests es al iniciar el código productivo. Si eso no ocurrió, debes comenzar cuanto antes, acompañando cada nueva funcionalidad importante con su test respectivo.

Ahora que has adquirido estos conocimientos prácticos, comienza a replicar, modificar y extender los ejemplos en tus propios proyectos personales o profesionales. Recuerda que el verdadero aprendizaje del testing llega con la práctica constante.