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

292
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar

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