我正在尝试创建一个断言等于 (double, double, epsilon) 方法。我创建了它,由于某种原因,当我运行我的测试器时,该方法失败了。
public static void assertEquals(double expect, double actual, double epsilon){
totalAssertMethods ++;
double difference = (Math.abs(expect - actual));
if (difference <= epsilon){
} else {
totalAssertMethodsFailures ++;
Throwable throwable = new Throwable("Error: Expected X +/-E, found Y");
throwable.printStackTrace();
}
}
我认为问题在于,测试中期望和实际之间的差异仅与 epsilon 相差约 0.000001。有谁知道如何解决这个问题?