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

414
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 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