gpt4 book ai didi

junit - 可以在 JUnit 中的 float 和 double 值上使用 assertTrue 吗?

转载 作者:行者123 更新时间:2023-12-04 18:15:32 27 4
gpt4 key购买 nike

我尝试在浮点数上使用 assertEquals 方法,eclipse 说该方法已折旧。因此,以下替代方案是否可以接受?

Assert.assertTrue("Total does not match expected total :",
receipt.getTotal() == 32.19f);

是否有特定原因不能使用 assertEquals 来比较测试中的两个浮点数或 double 数?

一般来说,在 JUnit 中断言两个十进制值相等的最佳方法是什么。我正在使用 JUnit 的 4.10 版本

最佳答案

通常,您可以将原始类型与 == 进行比较,但对于浮点值,两个值可能看起来相同(当格式化为字符串时)但是两个不同的值。您应该使用 assertEquals(expected, actual, delta) .查看 JUnit: assertEquals for double values 的答案.

因为 double (和浮点)计算不一定准确,所以您可以使用 delta 进行比较(实际上是误差范围)。

关于junit - 可以在 JUnit 中的 float 和 double 值上使用 assertTrue 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11816804/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com