我正在使用mocha在nodejs中进行测试。

问题是我不知道如何处理匹配的第n个小数点精度。例如下面的代码

value.should.equal((0.8+0.4+1/3)/3)


失败并显示错误消息

 AssertionError: expected 0.5111111111111111 to equal 0.5111111111111112
      + expected - actual

      -0.5111111111111111
      +0.5111111111111112


但这对我来说是一样的东西。如何处理这种精度?

最佳答案

您可以使用chai断言库和closeTo()断言

value.should.be.closeTo(expected, delta)

09-16 10:06