Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

516
Visualizações
¿Por qué process.env.FIRESTORE_EMULATOR_HOST no estará definido en el entorno de prueba? a pesar de que he ejecutado el emulador

estoy usando

  • Nodo 14
  • prueba de funciones de base de fuego: 0.2.3
  • base de fuego-admin: 9.6.0
  • funciones firebase: 3.13.2
  • herramientas de base de fuego: 9.10.0
  • moca: 8.3.2,
  • ts-nodo: 9.1.1

si firebase emulators:start

entonces esperaré que process.env tenga propiedades como

 "FUNCTIONS_EMULATOR": "true", "FIRESTORE_EMULATOR_HOST": "localhost:8080"

ahora necesito crear pruebas para mi función en la nube usando mocha, lo probaré usando Firestore y el emulador de funciones, doy mi nombre de archivo events_cron_job.test.ts

después de ejecutar el simulador, trato de registrar en la consola esos valores y obtuve indefinidos así

ingrese la descripción de la imagen aquí

Espero

 console.log(process.env.FUNCTIONS_EMULATOR) // will be "true" console.log(process.env.FIRESTORE_EMULATOR_HOST) // will be "localhost:8080"

Creo que esto solo sucede en un entorno de prueba (estoy usando mocha), tengo disparadores http regulares y funciona como se esperaba

antes de ejecutar el emulador, trato de ejecutar esto en la terminal

 export FIRESTORE_EMULATOR_HOST="localhost:8080" export FUNCTIONS_EMULATOR="true"

y luego ejecute firebase emulators:start , pero el resultado será el mismo, todavía no estoy definido para esos valores

porque esos valores no están definidos, entonces si mi computadora portátil está desconectada de Internet, esta prueba no se ejecutará (es decir, solo accederá a los datos en el servidor de producción, ¡no al emulador!), Espero que la prueba aún se ejecute incluso si hay No hay conexión a Internet ya que uso el emulador.

Ejecuto la prueba de mocha usando

 mocha -r ts-node/register src/tests/cloud_function_tests --recursive --extension .test.ts --timeout 60000 --exit
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Como puede ver en este comentario de problema de Github , para ejecutar pruebas con el emulador de Firebase, debe usar el siguiente comando para activarlo:

 firebase emulators:exec "npm test"

Como así es como las pruebas estaban destinadas a ser ejecutadas por el equipo de Firebase usando el emulador.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda