Newton のメソッドを実装する、私が作成したキューブ ルート メソッドのテスト ケースの JUnit コードを次に示します。
@Test
public void standardCase_negative64e9() {
double n = -64E9;
double result = csc143.newton.Roots.cbrt(n);
double delta = n * 1E-8;
assertEquals("Standard cube root -64E9", -4.0E3, result, delta);
}
すべてのテスト ケースのテストを (DrJave IDE を使用して) 実行すると、このテスト ケースのみが失敗し、次のように表示されます。
Failure: java.lang.AssertionError: Standard cube root -64E9 expected:<-4000.0> but
was:<-4000.0000000003124>
メソッドで「デルタ」を(の代わりに)に置き換えると、失敗しないため、これは「デルタ」値(-640
この場合)と関係があると思います...640
-640
assertEquals()