Estoy tratando de tomar una captura de pantalla simple usando Cypress, sin embargo, solo funciona en la GUI de Cypress ( cypress open ).
Cada vez que ejecuto cypress run , muestra que la prueba tuvo éxito pero no se guardó la captura de pantalla.
Este es mi código:
describe('Snapshot', () => it.only('Take snapshot', async () => { cy.visit("http://www.google.com"); cy.screenshot(); }); });En realidad, incluso en la GUI puede obtener un comportamiento inconsistente con el código que ha proporcionado: debe intentar refactorizar sus pruebas para evitar el uso de async .
Cypress ya hace muchas cosas asincrónicas por sí mismo. Consulte esta respuesta para obtener más información sobre cómo cypress usa las promesas y cómo evitar async , así como algunas cosas que podría probar si realmente desea usar async .
Su código creará con éxito capturas de pantalla bajo cypress run si elimina la palabra clave axync :
describe('Snapshot', () => { it.only('Take snapshot', () => { cy.visit("http://www.google.com"); cy.screenshot(); }); }); Nota: también agregué la llave de apertura faltante { al final de la primera línea. Dado que dice que este código se ejecutó para usted en la GUI, asumo que la llave no fue el problema, sino que simplemente se perdió durante la publicación.