Yields
📚 Documentation
.
Los “Yields” son punteros producidos mediante referencias por .then
. Dichas referencias son modeladas idénticamente como Promesas en JavaScript, el resultado obtenido como retorno de un then
es llamado como Yield.
.
cy.get('.nav').then((nav) => {})
.
Dentro de un función callback, tendremos clousers que permite manipular la referencias con el propósito de manipular valores o realizar algunas acciones.
.
En cuyo caso que se desea cambiar la operación a comandos de Cypress, utilizamos .wrap
. 📚 Documentación
cy.wrap(1)
.then((num) => {
cy.wrap(num).should('equal', 1) // true
})
.should('equal', 1) // true
.
Adicionalmente, con wrap
podemos referencial:
- Objetos
const getName = () => {
return 'Jane Lane'
}
cy.wrap({ name: getName }).invoke('name').should('eq', 'Jane Lane')
- Elementos
cy.get('form').within((form) => {
cy.wrap(form).should('have.class', 'form-container')
})
- Promesas como eventos
const myPromise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve({
type: 'success',
message: 'It worked!',
})
}, 2500)
})
it('should wait for promises to resolve', () => {
cy.wrap(myPromise).its('message').should('eq', 'It worked!')
})
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?