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

121
Visualizações
Cypress-obtener valor de la función de devolución de llamada

Hola, estoy tratando de automatizar la API de paginación usando cypress. Esta API toma 2 parámetros como 'pageNo' y 'pageSize', pageNo significa en qué página y pageSize significa registros totales devueltos por el servidor (con un máximo de 15 en 1 página).

Problema: - Quiero buscar un nombre de archivo en particular que devuelve esta API, no sé en qué página aparece, tan pronto como lo encontré, tengo que salir de ambos bucles (pageNo y pageSize) Aquí está mi código: -

 describe('Check particular value', function() { it('Check record', ()=>{ for (let index = 1; index < 7; index++) { cy.request({ method:"GET", url:"https://mydomainName.com/api/v1/searchFile/getFileList", qs:{"pageNo":index,"pageSize":15}, headers:{"authorization": "jwt token "} }).then(function(response){ for (let j = 0; j < response.body.data.length; j++) { if (response.body.data[j].fileName.includes('file_2021_08_20_04_31.txt')) { break; } } }); // how can i come out of this parent loop } }); });

¡¡Gracias de antemano!!

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Haz el bucle dentro de una función. La función regresa cuando se encuentra el elemento o se repite para la página siguiente.

Si llega a la página 7 sin encontrar, falla la prueba (o devuelve un mensaje).

 const findFile = (expected, pageSize, maxPages, pageNo = 1) => { if (pageNo === maxPages) { throw `"${expected} was not found` } return cy.request({ ... qs:{ pageNo ,pageSize }, ... }).then(response => { const files = response.body.data const foundFiles = files.filter(file => file.fileName === expected) if (!foundFiles.length) { // not on this page, try next pageNo = pageNo + 1 findFile(expected, pageSize, maxPages, pageNo) } else { return foundFiles // if you want the matching objects } }) }) it('finds a file', () => { findFile('file123.txt', 15, 7).then(foundFiles => { // example further assertion on found files foundFiles.forEach(file => expect(file.fileName).to.eq('file123.txt')) }) })
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