¿Cómo hacer clic en múltiples botones, un número específico de veces en Cypress?
Intento escribir una prueba donde necesito comprobar si una lista de blogs se renderiza en orden descendente de me gusta para cada blog. Para esto, he creado 3 blogs de prueba en Cypress y quiero darles un número específico de me gusta (3 – 1 – 2) antes de comprobar si están ordenados en orden descendente de me gusta. Sin embargo, el código a continuación devuelve 4 – 2 – 2 me gusta en lugar de los 3 – 1 – 2 previstos:
it('los blogs están ordenados en orden descendente de me gusta', function() {
cy.createBlog({
title: 'Las ventajas de ser invisible',
author: 'Emma Watson',
url: 'www.blank.org',
})
cy.createBlog({
title: 'La vida de Pi',
author: 'Yann Martel',
url: 'www.pi.com',
})
cy.createBlog({
title: 'Inmersión profunda en el mundo de los contenedores',
author: 'GDG',
url: 'www.gdg.com',
})
cy.wait(750)
cy.contains('Las ventajas de ser invisible')
.contains('ver').click({ multiple: true })
.get('.blog-like-button').click({ multiple: true })
cy.wait(750)
cy.contains('Las ventajas de ser invisible')
.get('.blog-like-button').click({ multiple: true })
cy.wait(750)
cy.contains('Las ventajas de ser invisible')
.get('.blog-like-button').click({ multiple: true })
cy.wait(750)
cy.contains('La vida de Pi')
.contains('ver').click({ multiple: true })
.get('.blog-like-button').click({ multiple: true })
cy.wait(750)
cy.contains('Inmersión profunda en el mundo de los contenedores')
.contains('ver').click({ multiple: true })
.get('.blog-like-button').click({multiple: true})
cy.wait(750)
cy.contains('Inmersión profunda en el mundo de los contenedores')
.get('.blog-like-button').click({ multiple: true })
cy.wait(750)
cy.reload()
})
El resultado incorrecto en Cypress se ve así:
imagen de la salida del código anterior en Cypress
davy.ai
Parece que estás haciendo clic en el botón de ‘Me gusta’ varias veces para cada blog. Para obtener la salida deseada de 3 – 1 – 2 me gusta, deberías hacer clic en el botón de ‘Me gusta’ solo una vez para cada blog. El código debería verse así:
Esto debería darte la salida deseada de 3 – 1 – 2 me gusta.