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

137
Vistas
Cypress: cómo verificar si una interpolación de cadenas contiene algún valor de una matriz

Me pregunto cuál es la mejor manera de abordar este problema:

  • Tengo varios elementos DOM que quiero recorrer, todos tienen la misma ruta src además del nombre del personaje.
  • Quiero validar que cada src coincida con cualquier valor de nombre de jugador de una matriz

const playerName = ["_player_One_", "_player_two_", "_player_three_", "_player_four_"]

 cy.get("myElement").each(($match) => { cy.wrap($match).each(($el) => { cy.get($el).should("include.attr", "src", `/foo/bar/art/all-art-${playerCharacter[]}.png`); }); });

Lo reconozco en su forma actual, se me devolverá con la salida de matriz completa, pero solo estoy compartiendo como referencia el ángulo del que vengo.

Cualquier ayuda sería apreciada, incluso si es una nueva forma de estructurar que no había considerado.

¡Gracias por adelantado!

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

0

Convierta los nombres de los jugadores en una matriz de enlaces, afirme con 'oneOf'.

Funciona si los elementos del jugador cambian de orden.

 const players = ["_player_One_", "_player_two_", "_player_three_", "_player_four_"] const links = players.map(player => `/foo/bar/art/all-art-${player}.png`) it('all elements have a player', () => { cy.get('div[src^="/foo/bar/art/all-art-"]') .each($el => { cy.wrap($el).invoke('attr', 'src').should('be.oneOf', links) }) }) it('all players have an element', () => { cy.get('div[src^="/foo/bar/art/all-art-"]') .then($els => { const attrLinks = [...$els].map($el => Cypress.$($el).attr('src')) links.forEach(link => { cy.wrap(link).should('be.oneOf', attrLinks) }) }) })
about 4 years ago · Juan Pablo Isaza Denunciar

0

Puedes hacer algo como esto:

 const playerName = ["_player_One_", "_player_two_", "_player_three_", "_player_four_"] cy.get('myElement').each(($ele, index) => { expect($ele.attr('src')).to.include(playerName[index]) })
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