Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

409
Vistas
Cypress, obtenga el índice de un elemento específico devuelto por cy.get()

Estoy escribiendo pruebas de Cypress para un sitio web que tiene una serie de citas, algunas de las cuales tienen un botón "Leer más" al final, que muestra el resto de la cita. si uso

 cy.get(".quote")

devuelve una lista de varias cotizaciones. Puedo usar

 cy.get(".quote").find(".read-more").first()

para encontrar la primera cita que tiene un botón Leer más, pero quiero saber cuál es el índice de ese elemento en la lista original de citas. Estoy probando para asegurarme de que el botón Leer más revele correctamente la cita completa, pero el botón desaparece (se elimina por completo del DOM, no solo se establece en visibilidad: ninguno) una vez que se hace clic en él, por lo que no puedo usar el mismo Comando para encontrar la cita de nuevo. Si pudiera acceder al elemento de esa cita, podría usar

 cy.get(".quote").eq(element)

para extraer esa cita específica nuevamente una vez que el botón Leer más desaparezca.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puedes hacer algo como esto. Aplique each sobre las comillas, luego dentro de cada busque la cita que está buscando y luego obtenga el índice de esa cita.

 cy.get('.quote').each(($ele, index) => { if ($ele.text().includes('some part of the quote')) { cy.log(index) //logs the index } })
about 4 years ago · Juan Pablo Isaza Denunciar

0

El botón Leer más revela correctamente la cita completa y luego el botón desaparece una vez que se hace clic

Suponiendo que el botón read more elimine el .read-more del elemento de cotización después de hacer clic, entonces puede hacer lo siguiente.

 cy.get('.quote') // returns all quotes .find('.read-more') // only quotes with 'read more' .each(($quote) => { cy.wrap($quote).find('.read-more-button').should('be.visible').click() //check read more button is visible, then click cy.wrap($quote).invoke('text').should('include.text',COMPLETE_QUOTE) // you can alter the should to however you best see to the text assertion cy.wrap($quote).find('.read-more-button').should('not.exist') // particular read more button does not exist in DOM })
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda