You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cypress如何验证获取的数值仅保留1位小数?

验证数值仅显示1位小数的方法

针对你遇到的数值显示多位小数的bug,这里提供几种在Cypress中验证LengthValue仅为1位小数的方法:

方法1:正则表达式匹配格式

直接通过正则检查字符串格式,确保小数点后恰好1位数字:

cy.get('@LengthValue').then(length => {
  // 匹配整数部分+小数点后1位的格式,支持整数部分为多位数,小数部分1位
  expect(length).to.match(/^\d+\.\d$/);
});

方法2:检查小数部分长度

将字符串按小数点拆分,验证小数部分的字符数为1:

cy.get('@LengthValue').then(length => {
  const parts = length.split('.');
  // 确保存在小数点,且小数部分长度为1
  expect(parts).to.have.length(2);
  expect(parts[1]).to.have.length(1);
});

方法3:数值格式化后对比

将获取的值转为数字,格式化为1位小数后与原字符串对比,确保没有多余的末尾0:

cy.get('@LengthValue').then(length => {
  const numericValue = parseFloat(length);
  const formattedValue = numericValue.toFixed(1);
  expect(length).to.equal(formattedValue);
});

注意事项

  • 由于cy.invoke('val')返回的是字符串类型(input的value属性默认是字符串),所以优先从字符串层面验证更直接。
  • 如果业务允许整数(比如15这种无小数的情况),可以调整正则或拆分后的判断逻辑,比如把正则改为/^\d+(\.\d)?$/,同时判断小数部分可选且长度为1。

内容的提问来源于stack exchange,提问作者TimsKillerRabbit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 12:22:55