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

110
Vistas
Redondeo en ciprés

Quiero comparar un número de un formulario con un número establecido. El tema es que tenemos decenas de sistemas diferentes y dependiendo del sistema el número puede mostrarse con 2 a 4 decimales. Entonces, en un sistema, el número se muestra como 11,1265, en otro como 11,127 y en otro como 11,13. Por lo tanto, me gustaría encontrar el número con decimales antes de la afirmación.

Ya encontré esta respuesta y traté de implementar la solución. Sin embargo, no se pudo hacer que funcionara porque Cypress no sabe .toFixed()

Esto es lo que he probado hasta ahora:

  1. De la respuesta 1
 cy.get('#Client_rate_ap').then(res => { expect(res.toFixed(2)).to.equal('11,13') })

esto vuelve

 TypeError res.toFixed is not a function
  1. con cy.wrap()
 cy.get('#Client_rate_ap').then(res => { cy.wrap(res).toFixed(2).should('be.equal','11,13') })

y

 cy.get('#Client_rate_ap').then(res => { cy.wrap(res.toFixed(2)).should('be.equal','11,13') })

Ambos también devuelven el error toFixed is not a function

{{editar}} Elemento agregado

Este es el elemento con el valor que quiero comparar:

 <input class="rate_ap tariff-connected-field" name="Client[rate_ap]" id="Client_rate_ap" type="text" value="11,1300">
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Primero debe convertir su texto en flotante y luego aplicar .toFixed(2) . Algo como:

 cy.get('#Client_rate_ap') .invoke('val') .then((rate) => { expect(parseFloat(rate).toFixed(2)*1).to.equal(11.13) })

En caso de que sus precios se muestren en coma, primero debe reemplazar la coma con un decimal, en ese caso puede:

 cy.get('#Client_rate_ap') .invoke('val') .then((rate) => { expect(parseFloat(rate.replace(',', '.')).toFixed(2)*1).to.equal(11.13) })
about 4 years ago · Juan Pablo Isaza Denunciar

0

La forma más sencilla usando la respuesta que ya encontraste,

 cy.get('#Client_rate_ap') .then(res => { expect(Math.abs(11.13 - res.replace(',','.'))).to.be.below(0.01) }) })
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