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

175
Visualizações
¿Cómo puedo probar automáticamente Service Workers en modo fuera de línea? Probando con ciprés

Desarrollé algunos trabajadores de servicio, pero cuando el complejo de trabajadores de servicio (SW) aumenta, quiero crear una batería de pruebas para verificarlo regularmente.

Decidí usar Cypress en primera instancia. Pero lucho con algunos problemas que no me dejan manejar la situación.

  1. Modo offline. Cypress no tiene un caso de uso nativo, pero tiene una receta para Chrome (no importa si solo funciona en un navegador único)
  2. Cuando la receta del modo fuera de línea está activa, la búsqueda no funciona correctamente en la prueba.

Cypress Open Issues - Simula el modo fuera de línea #235

Receta del modo sin conexión de Cypress para Chrome

La misma web funciona en el navegador pero no en la prueba de ciprés.

código de prueba de ciprés

 it('can load if sw registered and try to visit', () => { cy.visit(folder) cy.contains('#sw-status', 'SW not registered') cy.get('#register').click().wait(1000) Cypress.goOffline() Cypress.assertOffline() cy.get('#fetch').click() cy.contains('#fetch-response', '200') })

Excepción atrapada en ciprés: no se pudo obtener Cypress - Recuperar no funciona. Excepción

Sin internet. Firefox puede usar la búsqueda Firefox Obtener Ok

Sin internet. Chrome puede usar la búsqueda Búsqueda de cromo Ok

Algo raro. Sin Internet, Chrome dijo que window.navigator.onLine es verdadero window.navigator.onLine difiere de Firefox/Chrome

¿Cualquier sugerencia? ¿Probar con otro marco de prueba?

Creo que la explicación del problema es completa y completa, pero si alguien piensa que podría ser útil, puedo compartir el código sin problemas.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Después de un tiempo hice una búsqueda más profunda en los temas de ciprés.

Encontré un comentario que hablaba de un problema en algunas situaciones cuando NO usaba localhost como nombre de servidor (estaba usando TLD personalizado con Valet para Linux , por lo que estaba muy relacionado con mi problema). Espero que si estás en mi situación no necesites sumergirte en el mismo proceso.

Así que compruebo con la nueva configuración y MÁGICAMENTE todo funciona!.

Todo lo que hice fue iniciar un servidor usando localhost y luego ejecutar las pruebas (automáticamente o con cypress UI)

 // package.json // 'npm test' to run tests automatically // 'npm run test:ui' to run with cypress UI "scripts": { "start": "http-server -a localhost -p 3030 -c-1", "cy:run": "cypress run", "cy:ui": "cypress open", "test": "start-server-and-test start http://localhost:3030 cy:run", "test:ui": "start-server-and-test start http://localhost:3030 cy:ui", },`

He compartido los primeros intentos en un repositorio.

Dune Browsing: exploración de la capacidad de prueba de los trabajadores de servicios en modo fuera de línea.

about 4 years ago · Juan Pablo Isaza 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