使用TestNG的Assert.assertEquals(double expected, double actual, double delta)
,使用以下数字用于delta的好数字(由于没有delta,断言失败)
AssertionError: expected [121.97] but found [121.96999999999998]
我尝试使用1
,.01
和.001
,但所有三个都通过了。我想保持成功的补贴非常小(换句话说,如果“实际数字”(从我的观点来看)是121.97和121.96我希望测试失败。谢谢!
答案 0 :(得分:3)
如果您希望121.97
和121.96
的测试失败...
尝试使用小于
的delta
|121.97 - 121.96| = 0.01
。
怎么样:
final double DELTA = 0.001;
assertEquals(121.97, 121.96, DELTA);
输出:
java.lang.AssertionError: expected [121.96] but found [121.97]
Expected :121.96
Actual :121.97
一般情况下......如果您希望a
和b
的断言失败,
使用小于|a - b|
的delta。