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

291
Visualizações
Cypress - Trabajar con tablas div - Validación de texto en cada fila

Quiero verificar si la primera columna del texto de cada fila comienza con "AA", "BB" o "CC". Pero no pude manejarlo en la tabla div. Solo puedo seleccionar y verificar la primera fila (código a continuación). Pero también intenté seleccionar toda la columna e intenté usar cy.each & cy.wrap y también obtuve errores.

¿Cómo puedo verificar la primera columna para el texto de cada fila? (La tabla tiene 40-45 filas).

La tabla se ve así:

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

En este momento solo puedo verificar la primera fila con el código a continuación. ¿Cómo puedo verificar todas las filas como esta? ¿Te queda claro el siguiente código por cierto?

 cy.get('div[row-index="0"]') .eq(1) .invoke('text') .then(text => { const productID = text.trim(); let correctProductIDPrefix = false; ['AA', 'BB', 'CC'].forEach(possibleProductIDPrefix => { if (!correctProductIDPrefix) { correctProductIDPrefix = productID.startsWith(possibleProductIDPrefix); } }); expect(correctProductIDPrefix).to.be.true; });

¡Gracias por adelantado!

about 4 years ago · Santiago Gelvez
2 Respostas
Responde à pergunta

0

Para realizar la misma prueba en todas las filas

  • seleccione todas las filas (cambie [row-index="0"] a [row-index] )
  • use .each() para ejecutar la prueba en todas las filas
  • subseleccione solo la columna que desee, en caso de que alguna otra columna también tenga el prefijo y le dé un resultado falso positivo
  • use el método Array.some() para verificar al menos una coincidencia de prefijo
 const possibleProductPrefixes = ['AA', 'BB', 'CC'] // define once outside test cy.get('div[row-index]') // selects every row .each($row => { const $col = $row.find('[col-id="orderNumber"]') // pick out the column const productId = $col.text().trim() const correctProductIDPrefix = possibleProductPrefixes.some(prefix => { return productId.startsWith(prefix) }) expect(correctProductIDPrefix).to.be.true; });

Matriz de referencia.prototipo.algunos ()

El método some() prueba si al menos un elemento de la matriz pasa la prueba implementada por la función proporcionada. Devuelve verdadero si, en la matriz, encuentra un elemento para el cual la función proporcionada devuelve verdadero; de lo contrario, devuelve falso. No modifica la matriz.

about 4 years ago · Santiago Gelvez Relatório

0

Puedes hacer algo como esto:

 let prefix = ['AA', 'BB', 'CC'] cy.get('.ag-cell-value').each(($ele, index) => { expect($ele.text().trim().startsWith(prefix[index])).to.be.true })
about 4 years ago · Santiago Gelvez 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