一尘不染

JUnit断言:在浮点数之间进行断言

java

我需要比较两个值:一个是字符串,另一个是float,因此我将字符串转换为float,然后尝试调用,assertEquals(val1,val2)但这未经授权,我猜assertEquals不接受float作为参数。

在这种情况下,对我有什么解决方案?


阅读 356

收藏
2020-12-03

共1个答案

一尘不染

您必须为Floats的断言提供一个增量:

Assert.assertEquals(expected, actual, delta)

增量是期望值与实际值之间的最大差异(delta),对于这两个数字,仍将其视为相等。

Assert.assertEquals(0.0012f, 0.0014f, 0.0002); // true
Assert.assertEquals(0.0012f, 0.0014f, 0.0001); //false
2020-12-03