La gente se mueve. Sale de la Wi-Fi de casa, entra en un ascensor, se sube a un tren. Tu app tiene que sobrevivir a que la red cambie mientras hay una petición en curso. Este guion está pensado para dárselo a un tester; cada paso dice qué hacer, qué debería pasar y por qué.
Complementa probar el comportamiento sin conexión, que cubre el caso de no tener red en absoluto.
Antes de empezar
- Usa un teléfono con Wi-Fi y una conexión de datos móviles que funcione.
- Inicia sesión primero, para probar una sesión real.
- Anota el modelo del teléfono, la versión de Android y la compilación de la app.
El guion
- De Wi-Fi a datos móviles, en reposo. Abre la app con Wi-Fi y luego desactiva la Wi-Fi. Debe pasar: la app sigue funcionando con datos móviles sin reiniciarse. Por qué: los sockets ligados a la red anterior pueden colgarse en silencio.
- De datos móviles a Wi-Fi, en reposo. Lo mismo al revés. Debe pasar: igual. Por qué: algunas apps solo gestionan una dirección.
- Cambio durante una carga. Abre una lista larga o una pantalla que pide datos y alterna la Wi-Fi a mitad de la carga. Debe pasar: o se cargan los contenidos, o ves un error claro con opción de reintentar. Nunca un spinner infinito.
- Cambio durante el envío de un formulario. Rellena un formulario, pulsa enviar y cambia de red justo después. Debe pasar: un resultado claro. Luego revisa el servidor: sin registros duplicados ni datos perdidos. Por qué: los reintentos pueden enviar dos veces.
- Cambio durante una subida o descarga. Usa una foto o un archivo. Debe pasar: se reanuda o falla limpiamente con opción de reintentar. Un archivo subido a medias no debería aparecer como completo.
- Cambio con la sesión iniciada durante más tiempo. Quédate en la app varios minutos, alterna la red y espera. Debe pasar: la sesión sobrevive, sin cierres de sesión inesperados. Por qué: un fallo al renovar el token suele tratarse como "sesión cerrada".
- Modo avión activado y desactivado. Actívalo a mitad de una tarea y luego desactívalo. Debe pasar: la app detecta que la red vuelve y se recupera sin reiniciarse.
- Señal débil. Ve a un lugar con mala cobertura o usa una conexión limitada. Debe pasar: los tiempos de espera terminan en un mensaje, no en una app bloqueada.
- Segundo plano y vuelta. Cambia de red con la app en segundo plano y luego vuelve a ella. Debe pasar: los datos se actualizan; no hay pantallas antiguas ni rotas.
- Ahorro de datos y conexión medida. Si tu app sincroniza mucho, activa el Ahorro de datos. Debe pasar: el comportamiento es razonable, con descargas grandes aplazadas o confirmadas.
Qué informar
Por cada fallo, pide al tester que escriba:
- el número de paso y lo que hizo,
- lo que vio (una captura o una grabación de pantalla ayuda),
- la hora a la que pasó,
- cómo terminó: se recuperó solo, necesitó un reintento, necesitó reiniciar o perdió datos.
Si puedes, añade un registro. Consulta nociones básicas de adb.
Consejos para el desarrollador
- Los reintentos deben tener un límite y esperar más entre intentos.
- Haz que las escrituras sean seguras de repetir, para que un reintento no cree un duplicado.
- Muestra al usuario cuándo estás esperando la red en lugar de no mostrar nada.
Parte de la guía de pruebas de apps Android. Relacionado: prueba de teclado y entrada y guion de prueba con TalkBack.
¿Quieres que un tester lo ejecute en un teléfono real? Empieza gratis y solicita feedback privado y estructurado.