Pruebas de Cloud Functions en Firebase

Clase 8 de 22Curso de Firebase 5: Cloud Functions

Resumen

Domina el ciclo completo de despliegue y prueba de Cloud Functions en Firebase: desde el envío a producción hasta la verificación de disparadores en Firestore y el envío de notificaciones por tópico. Aquí verás cómo detectar errores, corregirlos con rapidez y validar cada paso en la consola y los registros.

¿Cómo desplegar funciones en Firebase de forma segura?

Despliega todas tus funciones o solo una, según necesites. La práctica recomendada es probar localmente y luego enviar a Firebase para validar en entorno real. El comando clave concentra el flujo de publicación.

firebase deploy --only functions
# Para una sola función:
firebase deploy --only functions:<nombreDeLaFunción>
  • Usa el panel de Functions para confirmar el estado de cada despliegue.
  • Observa la región de ejecución (ej.: US Central).
  • Verifica versión de Node, memoria asignada y tiempo de espera.
  • Recuerda: cada función es autónoma, con CPU y RAM dedicadas.
  • Ejemplo de configuración vista: 256 MB de memoria y 60 s de timeout.

¿Qué ver en la consola de functions?

En la consola web, sección Functions, identifica las funciones desplegadas: creación de usuario, creación de CRM, envío de notificación y registrar tópico. Desde allí accedes a Registros para seguir la ejecución en tiempo real y diagnosticar problemas.

¿Cómo registrar y validar tokens en Firestore?

Al ingresar el usuario a la app, se obtiene un token que se registra en Firestore (colección tokens). Luego validas el disparo de la función que escucha la creación de documentos.

  • Actualiza la interfaz para que el token se envíe a la base de datos.
  • Verifica la colección tokens y confirma el token guardado.
  • Usa F12 para ver detalles del token (por ejemplo, sus últimos caracteres) y cruzar con lo almacenado.
  • Vuelve a Functions y revisa Registros para confirmar que el disparador onCreate se ejecutó.

¿Qué hacer si la función falla al dispararse?

Si aparece el error «no es un constructor», revisa el código: el problema puede deberse a un destructuring incorrecto y a la necesidad de invocar el módulo correcto (por ejemplo, volver a llamar notificaciones). Despliega solo la función con error para agilizar.

firebase deploy --only functions:<nombreDeLaFunción>
  • Después de corregir, elimina la colección tokens para forzar un nuevo evento de creación.
  • Actualiza la app, registra el token y revisa Registros para confirmar que se adicionó correctamente el token al tópico.

¿Cómo probar notificaciones con un post y confirmar el envío?

Crea un post (por ejemplo, con un enlace de video) y valida el mensaje de éxito y la notificación en foreground. Finalmente, confirma en Registros que el mensaje se envió al tópico esperado.

  • Crea el contenido y pulsa Crear post.
  • Observa el mensaje: «Post creado correctamente».
  • Revisa que llegue la notificación en foreground.
  • Mira en Registros: «Mensaje enviado correctamente al tópico Nuevo post».

¿Qué reto práctico puedes implementar ya?

Implementa una función de auditoría de actualizaciones: al hacer un update, guarda en una colección el registro antiguo y el nuevo. Pronto: Cloud Functions para storage.

¿Tienes dudas o ya lograste el flujo de notificaciones? Comparte tu experiencia y preguntas en los comentarios.