Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

188
Views
¿Cómo puedo dividir texto y registrar el valor en Cypress?

Estoy intentando dividir el texto que se imprime en la aplicación web y registrar solo el valor en cypress. Solo necesito el número del mensaje de texto. Pero parece estar atascado porque el valor no se imprime (los registros están vacíos) ya que no se reconoce. Intenté varios enfoques pero todavía no puedo imprimirlo. Pensé que como necesito el valor numérico, Cypress no reconoce el número ya que lo especifiqué como texto. Pero incluso trato de invocar 'val'. El resultado parece el mismo.

 cy.get('#__label14-bdi').invoke('text').then((text) => { cy.log(text) var splittext= text.split('')[1]; cy.log(splittext);

Del código anterior se imprime la letra 'i'. Aquí hay un ss del texto de la aplicación web. ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Estás cerca, tienes que agregar un espacio en split(' ')

 "Ticket #502582".split(' ')[1] //You get #502582

O, si desea eliminar los caracteres especiales de la cadena de números, puede hacerlo:

 "Ticket #502582".split(' ')[1].replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, ''); //You get 502582

O, si solo desea eliminar # , puede

 "Ticket #502582".split(' ')[1].replace(/#/g, '') //You get 502582

Así que su programa debería gustarle esto:

 cy.get('#__label14-bdi') .invoke('text') .then((text) => { cy.log(text) //logs Ticket #502582 var splittext = text.split(' ')[1].replace(/#/g, '') cy.log(splittext) //logs 502582 as string cy.log(+splittext) //logs 502582 as Number })
about 4 years ago · Juan Pablo Isaza Report

0

Puede ser más fácil usar una expresión regular

 cy.get('#__label14-bdi').invoke('text') .then((text) => { return text.match(/\d+/)[0] // extract digits from text (first match) }) .should('eq', '502582')

como un numero

 cy.get('#__label14-bdi').invoke('text') .then(text => text.match(/\d+/)[0]) // extract digits (first match) .then(parseInt) .should('eq', 502582)

Usando .split() , tenga en cuenta el () adicional para agrupar

 cy.get('#__label14-bdi').invoke('text') .then(text => text.split(/(\d+)/)[1]) // 2nd part of split .then(parseInt) .should('eq', 502582)
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!