Pregunta

Estoy pensando en una estrategia de prueba para una aplicación que usa Firebase para su almacén de datos.Si bien está bien que las pruebas de un extremo a otro realicen solicitudes al backend real, sería bueno poder realizar pruebas unitarias de la lógica de la aplicación que no Tengo que salir a Firebase.

He estado buscando en la web una manera de usar algo como un archivo JSON local para simular el servicio javascript Firebase, pero no encontré nada.Existe algo como esto?Si no, lo escribiré y lo publicaré en github...

¿Fue útil?

Solución

Actualizar

Ver esta esencia y esta publicación para una exploración detallada de TDD encapsulado vs.usando simulacros para pruebas unitarias.

Publicación original

Sería muy difícil burlarse adecuadamente de un servicio de Firebase, como lo sería burlarse de los almacenes de datos más sofisticados.Piense en esto en términos de burlarse de MySQL o burlándose de MongoDB.

Suponiendo que su objetivo es hacer que el entorno local funcione sin conexión, una solución rápida podría ser utilizar una instancia local.Puedes agarrar el firebase-debug.js, guárdelo localmente y llame a set(/* data */) para inicializarlo para operaciones fuera de línea.

De lo contrario, su mejor enfoque sería encapsular toda la actividad de Firebase en una clase o biblioteca.Luego puedes burlarte de esa biblioteca en lugar de tus eventos de Firebase.Y para realizar una prueba cuasi unitaria (técnicamente, no son pruebas unitarias, ya que dependen de un servicio externo) de la biblioteca en sí, recurra a una instancia local fuera de línea de Firebase o configure una base de datos de desarrollo y copie sus datos de producción (o algunos datos iniciales). allá.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top